Plataforma heredada

Verificar dirección

Pueden haber diversos escenarios como la captura de orden o el cambio de dirección de orden que exigen la verificación de dirección. La aplicación proporciona un agente de verificación de dirección para verificar las direcciones de la orden y generar alertas para notificar a los usuarios que realicen la acción adecuada.

Solución

En la sección siguiente se describen las API, las rutinas de usuario, los servicios y otros componentes.

Al capturar o modificar una dirección, la API verifyAddress toma información sobre la dirección y trata de verificarla por adelantado, a través de un sistema de verificación de dirección (AVS). La comunicación con el AVS se maneja a través de la rutina de usuario YCDVerifyAddressWithAVSUE. Se devuelve el estado del proceso de verificación. Los posibles valores son:
  • UE_MISSING: no se ha podido encontrar una implementación para la rutina de usuario YCDVerifyAddressWithAVSUE.
  • AVS_DOWN: el sistema de verificación de dirección no ha respondido
  • FAILED: el sistema de verificación de dirección no ha podido verificar esta dirección
  • VERIFIED: el sistema de verificación de dirección ha verificado esta dirección

Durante la creación de orden, si el atributo IsAddressVerified se establece en N y se pasa en la entrada de la API createOrder, el sistema de verificación de dirección valida la dirección. Si la rutina de usuario YCDVerifyAddressWithAVSUE indica una dirección no válida, la orden se coloca en retención de tipo YCD_VERIFY_ADDRESS. Las órdenes con retención de verificación de dirección no se pueden planificar o liberar.

El agente de verificación de dirección recoge las órdenes que se ponen en retención de verificación de dirección. Para cada dirección de una orden que se deba validar, el agente llama a la API verifyAddress, que a su vez llama a la rutina de usuario YCDVerifyAddressWithAVSUE para interactuar con el AVS.

Si el AVS confirma que todas las direcciones son válidas, el agente elimina la retención en la orden.

Si la dirección no es válida, el agente rechaza la retención. Cuando una dirección no es válida, el AVS devuelve varias posibles coincidencias parecidas si puede. El agente maneja esta situación como si el AVS hubiera indicado una dirección no válida; rechaza la retención en la orden y genera una alerta. El agente no vuelve a procesar la orden a menos que una dirección se cambie manualmente.

Si el AVS no está en línea, el agente puede configurarse para eliminar la retención de la orden y procesarla o rechazarla para que la reprocese el agente más adelante.

Figura 1. Agente de verificación de dirección

Agente de verificación de dirección

Los detalles del agente de verificación de dirección son los siguientes:

Tabla 1. Atributos
Atributo Valor
ID de transacción base PROCESS_ORDER_HOLD_TYPE
Tipo de documento base 0001 (orden de venta)
Tipo de proceso base ORDER_FULFILLMENT (cumplimentación de orden)
Transacción abstracta Nee
API llamadas verifyAddress
Tabla 2. Parámetros críticos
Parámetro Descripción
Acción Este campo lo utiliza la aplicación, internamente. El único valor válido es Get. No modifique este campo.
Número de registros para búfer Opcional. Número de registros que se recuperarán y procesarán simultáneamente. Si está en blanco o se especifica como 0 (cero), el valor predeterminado es 5000.
CollectPendingJobs

Si este parámetro se establece en N, el agente no recopila información sobre los trabajos pendientes para esta transacción ejecutada en tiempos. Esta información de trabajo pendiente se utiliza para supervisar el agente en la Consola de gestión del sistema.

De forma predeterminada, CollectPendingJobs se establece en Y. Puede ser útil establecerlo en N si una transacción desencadenada por tiempo concreta está realizando un número significativo de consultas getPendingJobs y el coste de sobrecarga es demasiado alto.

Siguiente intervalo de cola de tareas

Número de horas que deben transcurrir antes de intentar procesar de nuevo una dirección. Este valor se utiliza con la regla MUST_VERIFY_ADDRESS. Si no se establece, el valor predeterminado es de 5 horas a partir de la hora actual.

Estadísticas de seguimiento

Ninguna.

Número de trabajos pendientes

Número de órdenes cuya dirección debe verificarse.

Tabla 3. Eventos generados por el agente de verificación de direcciones
Transacción/suceso Datos clave Datos publicados ¿Soporte de plantilla?
VERIFY_ADDRESS_FAILED
OrderHeaderKey,
OrderNo
VERIFY_ADDRESS.0001
.VERIFY_ADDRESS_
FAILED.001.xml

Se invoca el servicio YCD_VerifyAddressFailedAlert_1.0 para generar alertas de tipo YCD_VERIFY_ADDRESS. Se notifica a los usuarios de las direcciones en las que no se ha podido realizar la verificación mediante estas alertas para que puedan resolver la retención.

Los usuarios pueden abrir la alerta y ver los detalles. Se llama a la API getExceptionDetails para visualizar los detalles de alerta. Se llama a la API getCompleteOrderDetails para recuperar una lista de direcciones no verificadas en una orden. Se proporciona un enlace para permitir a los usuarios actualizar las direcciones de orden según sea necesario.

Implementación

Para utilizar la característica de verificación de dirección, se deben completar los pasos siguientes:
  1. Asegúrese de que se implementa el tipo de retención YCD_VERIFY_ADDRESS para la empresa que realiza la verificación de dirección. Realice los pasos siguientes para implementar un tipo de retención de verificación de dirección:
    1. Inicie Applications Manager-> Distributed Order Managementy cargue la empresa que realiza la verificación de direcciones.
    2. Vaya a Distributed Order Management -> < Específico de documento > -> < Tipo de documento > -> Fulfillment -> Hold Types.
    3. Pulse el icono Crear para crear el tipo de retención de verificación de dirección con los detalles siguientes:
      • En el campo Tipo de retención, entre YCD_VERIFY_ADDRESS.
      • En la ficha Creación de retención, seleccione las opciones siguientes:
        • Al confirmar el borrador de orden
        • Al crear la orden
      • En la ficha Resolución de retención, seleccione Verificación de dirección como la transacción ejecutada en tiempos que procesará las retenciones creadas.
      • En la ficha Efectos de retención, puede especificar las transacciones a las que se impedirá que procesen órdenes en esta retención.
    4. Pulse Guardar. El tipo de retención se guarda.
    Nota: Los atributos mencionados en el procedimiento son importantes. Además, puede especificar otros atributos para el tipo de retención basado en las necesidades comerciales.
  2. Implemente la rutina de usuario YCDVerifyAddressWithAVSUE para verificar la dirección en AVS.
  3. Configure el agente de verificación de dirección. Para configurar el comportamiento del agente cuando la AVS no está en línea, consulte los conceptos de modelado de la organización y los participantes.
  4. Configure el tiempo que el agente debe esperar para procesar una dirección. Para configurar la cantidad de tiempo que el agente debe esperar antes de intentar volver a procesar una dirección que no se ha podido verificar, se puede configurar en el Gestor de aplicaciones. Para más información sobre la configuración de los parámetros de los criterios de los agentes, consulte los conceptos de modelado de organizaciones y participantes.

Impacto de usuario final

Los usuarios pueden verificar la dirección y actualizarla si es necesario, de modo que las órdenes se envíen y facturen a la dirección correcta.