Servicio de actualización de estado de pedido

El servicio de actualización de estado de pedido es un servicio web de entrada responsable de actualizar el estado de un pedido en HCL Commerce cuando una tienda se configura para que utilice un sistema externo para proceso y despacho de pedidos. Este servicio web de entrada habitualmente lo invoca el sistema externo para actualizar el estado de un pedido transferido en HCL Commerce a efectos de visualización cuando el estado del pedido ha cambiado en el sistema externo.

Casos de uso típico

  • HCL Commerce ha capturado un pedido y se ha transferido a un sistema de gestión de pedidos externo para su proceso y despacho. El estado del pedido se cambió en el OMS externo. Se debe actualizar el estado del mismo pedido en HCL Commerce para que el comprador pueda ver este cambio al visualizar el estado del pedido a través de HCL Commerce.

URL de punto final y operación

El URL de punto final predeterminado de este servicio web de entrada es https://host_name:8000/webapp/wcs/services/OrderServices. La operación del servicio es SyncOrder, con BOD SyncOrder como petición y BOD ConfirmBOD como respuesta.

Nota: SyncOrder se utiliza para actualizar la columna de estado en las tablas de bases de datos ORDERS y ORDERITEMS. Si tiene previsto utilizar SyncOrder, debe establecer la etiqueta de propiedad syncWCSOrderStatus en true en el archivo de configuración de los componentes del pedido wc-admin-component.xml. Para establecer esta etiqueta, vaya al directorio workspace_dir/WC/xml/config/com.ibm.commerce.order y abra el archivo wc-admin-component.xml para editarlo. Añada el siguiente grupo de configuración con la etiqueta de propiedad syncWCSOrderStatus establecida en true:
<_config:configgrouping name="SyncOrder"> 
<_config:property name="syncWCSOrderStatus" value="true"/>
</_config:configgrouping>

Solicitud

Las peticiones de este servicio web de entrada están en formato de BOD SyncOrder. Se correlacionarán con el mandato OrderStatus y contienen la siguiente información:

XPath* Escriba Se correlaciona con Descripción: Obligatorio
ApplicationArea/BusinessContext/ContextData UserData - El área de contexto empresarial de la petición. Se utiliza normalmente para proporcionar datos de contexto de negocio, como el ID de tienda y el ID de idioma. -
ApplicationArea/UserArea/SequenceNumber string sequenceNumber El número de secuencia de la petición de actualización del estado de pedido. Se utiliza para determinar la secuencia de las peticiones de actualización de estado de pedido para el mismo pedido en los que HCL Commerce los pueda recibir fuera de secuencia. N
ApplicationArea/CreationDateTime dateTime lastUpdateTime La fecha de creación de la petición de actualización del estado de pedido. Se utiliza para determinar la secuencia de las peticiones de actualización de estado de pedido para el mismo pedido en los que HCL Commerce los pueda recibir fuera de secuencia y que no se proporcionen los números de secuencia de las peticiones. N
DataArea/Sync/ActionCriteria/ActionExpression/@actionCode string actionCode El código de acción. Debe ser "Update" Y
DataArea/Order/OrderHeader/OrderIdentifier/OrderID long orderId HCL Commerce ID del pedido. Y
DataArea/Order/OrderHeader/OrderIdentifier/ExternalOrderID string merchantOrderNumber ID externo del pedido. N
DataArea/Order/OrderHeader/OrderCharges/TotalProductPrice/@currency string currency Moneda de los cargos del pedido. N
DataArea/Order/OrderHeader/OrderCharges/TotalProductPrice decimal priceTotal Precio total de los productos del pedido. N
DataArea/Order/OrderHeader/OrderCharges/TotalShippingCharge decimal shippingTotal Total de cargos de envío del pedido. N
DataArea/Order/OrderHeader/OrderCharges/TotalSalesTax decimal taxTotal Total de impuestos sobre la venta del pedido. N
DataArea/Order/OrderHeader/OrderCharges/TotalShippingTax decimal shippingTaxTotal Total de impuestos sobre el envío del pedido. N
DataArea/Order/OrderHeader/OrderShippingInfo/RequestedShipDateTime dateTime requestShipDateTime Fecha de envío solicitada del pedido. N
DataArea/Order/OrderHeader/OrderShippingInfo/UserData/UserDataField[@name='shipCondition'] string shipCondition Código que indica si se acepta el envío parcial del pedido. Los valores válidos son:
  • SC = envío completo del pedido
  • SP = envío parcial del pedido
N
DataArea/Order/OrderHeader/OrderShippingInfo/UserData/UserDataField[@name='shippingModeFlag'] string shippingModeFlag Código que indica el nivel para la dirección de envío y la modalidad de envío. Los valores válidos son:
  • O = nivel de pedido
  • I = nivel de artículo
N
DataArea/Order/OrderHeader/OrderStatus/Status string orderStatus Estado del pedido. N
DataArea/Order/OrderHeader/CustomerComments string comment Comentarios del cliente en relación al pedido. N
DataArea/Order/OrderHeader/PlacedDateTime dateTime placeDateTime Fecha en que se ha formalizado el pedido. N
DataArea/Order/OrderItem[i]/OrderItemIdentifier/OrderItemID long orderItemId_i ID del artículo de pedido HCL Commerce del artículo de pedido i-th, si aplica. Y
DataArea/Order/OrderItem[i]/OrderItemIdentifier/ExternalOrderItemID string merchantItemNumber_i ID externo del pedido del artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/ProductIdentifier/SKU string partNumber_i SKU del producto asociado con artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/Quantity double quantityRequested_i Valor de cantidad del artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/OrderItemCharges/UnitPrice/Price decimal unitPrice_i Precio unitario del producto asociado con el artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/OrderItemCharges/UnitPrice/Price/@currency string currency_i Moneda de los cargos por artículos del pedido. N
DataArea/Order/OrderItem[i]/OrderItemCharges/OrderItemPrice decimal priceTotal_i Precio de artículo de pedido del i-th artículo de pedido. N
DataArea/Order/OrderItem[i]/OrderItemCharges/ShippingCharge decimal shippingTotal_i Cargo de envío del artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/OrderItemCharges/SalesTax decimal taxTotal_i Impuestos sobre la venta del i-th artículo de pedido. N
DataArea/Order/OrderItem[i]/OrderItemCharges/ShippingTax decimal shippingTaxTotal_i Cargo de envío del artículo de pedido i-th. N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/RequestedShipDateTime dateTime requestShipDateTime Fecha de envío solicitada del i-th artículo de pedido. N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/UserData/UserDataField[@name='shipCondition'] string shipCondition_i Código que indica si se acepta el envío parcial del pedido. Los valores válidos son:
  • SC = envío completo del pedido
  • SP = envío parcial del pedido
N
DataArea/Order/OrderItem[i]/OrderItemShippingInfo/UserData/UserDataField[@name='shippingModeFlag'] string shippingModeFlag_i Código que indica el nivel para la dirección de envío y la modalidad de envío. Los valores válidos son:
  • O = nivel de pedido
  • I = nivel de artículo
N

* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.

Respuesta

Las respuestas de este servicio web de entrada están en formato de BOD ConfirmBOD. Contienen la siguiente información:

XPath* Tipo Descripción:
DataArea/BOD/BODSuccessMessage - Este elemento está presente si la petición ha sido satisfactoria.

* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.

Ejemplos

Excepciones

Todas las excepciones están en formato de BOD ConfirmBOD con un elemento ResponseCriteria debajo del verbo Confirm. Contienen la siguiente información:

XPath* Tipo Descripción:
DataArea/Confirm/ResponseCriteria/ChangeStatus/Code string El identificador de correlación. Se puede utilizar para identificar de forma exclusiva una excepción en los registros de servidor.
DataArea/Confirm/ResponseCriteria/ChangeStatus/ReasonCode string El código de razón. El código es un HCL Commercecódigo de error del sistema, si aplica, o una clave del mensaje EC más un código de error secundario opcional si el código de error del sistema HCL Commerce no está disponible. Este código de error del sistema no puede estar disponible en el caso de excepciones de aplicación.
DataArea/Confirm/ResponseCriteria/ChangeStatus/Reason string El mensaje de excepción.

* Los prefijos de espacios de nombres se ignoran para una mayor sencillez.

Ejemplos