Guía de casos de uso de la API de estado de transacciones de gestión logística directa del proveedor v2021-23-28
Acceso programático al estado de la transacción de un proveedor de logística directa (DF).
Versión de API: 2021-12-28
¿Qué es la API de estado de transacciones de gestión logística directa?
Los proveedores pueden utilizar esta API para comprobar el estado de sus transacciones POST.
Incluye la siguiente operación:
Operación | Método HTTP | Path | Descripción |
---|---|---|---|
getTransactionStatus | GET | /vendor/directFulfillment/transactions/2021-12-28/transactions/{transactionId} | Devuelve el estado de la transacción indicada por el transactionId especificado. |
Obtener el estado de la transacción
Vendors can use the getTransactionStatus
operation to check the status of a POST transaction. When a request is posted to Amazon using certain POST operations in the vendor APIs, such as submitAcknowledgement
or submitShipmentConfirmations
, for example, a successful response contains a transaction ID that uniquely identifies the transaction. Amazon will process the transaction asynchronously, and the final response will be available via the getTransactionStatus
operation.
Amazon ofrece el estado de procesamiento final de las transacciones POST, como submitAcknowledgement
y submitShipmentConfirmations
a través de esta API. Recomendamos que los proveedores comprueben el estado mediante esta API para asegurarse de que las transacciones se han procesado correctamente. Si se produce un error, recibirás los detalles del error para que puedas corregir la transacción y volver a enviarla.
Estado de la transacción | Definición |
---|---|
Processing | Amazon ha recibido la transacción de la API y se está procesando. El procesamiento aún no se ha completado. Consulta el Acuerdo de nivel de servicio de cada operación de la API para conocer el tiempo previsto para finalizar el procesamiento. |
Success | Amazon ha procesado correctamente la transacción de la API. |
Failure | Se ha generado un error en la transacción de la API durante el procesamiento. Los detalles del error se proporcionarán en el cuerpo de respuesta getTransactionStatus . |
El estado de la transacción es compatible con las siguientes API de gestión logística directa:
Descripción | Sección de la API | Operación |
---|---|---|
Confirmación del pedido | Pedidos de gestión logística directa | submitAcknowledgement |
Enviar confirmaciones de envío | Envíos de gestión logística directa | submitShipmentConfirmations |
Solicitud de etiqueta de envío | Envíos de gestión logística directa | submitShippingLabelRequest |
Actualizaciones sobre el estado del envío | Envíos de gestión logística directa | submitShipmentStatusUpdates |
Actualización del inventario | Inventario de gestión logística directa | submitInventoryUpdate |
Factura | Pagos de gestión logística directa | submitInvoice |
If the transaction status is Processing
and not updated to Failure
or Success
after 15 minutes, then the transaction has not successfully completed. The Success
status will appear if the transaction is successful and an error code will be provided for Failure
.
You cannot use this API for invoice messages as they are not supported and the status will be always be Processing
. For any payment related queries, go to Vendor Central, select Contact Us, and select the relevant queue if the status is not updated in the vendor central portal within a day. Please ensure the data submitted is correctly formatted before opening the case.
For shipping label requests, if the transaction is failed with a terminal error reason code such as Internal server error
, go to Vendor Central and select Contact Us to get the cause investigated. This generally happens due to operational constraints. For data related failures, you can correct the data and resubmit the payload to get the order fulfilled.
Solicitud getTransactionStatus
To return the transaction status, call the getTransactionStatus
operation and pass the following parameter:
Parámetro de ruta:
Nombre | Descripción | Obligatorio |
---|---|---|
transactionId |
Devuelto anteriormente en la respuesta a la solicitud POST para una transacción específica. Tipo: cadena |
Sí |
Ejemplo de solicitud:
GET https://sellingpartnerapi-na.amazon.com/vendor/directFulfillment/transactions/2021-12-28/transactions/20190904190535-eef8cad8-418e-4ed3-ac72-789e2ee6214a
Respuesta de getTransactionStatus
Una respuesta correcta incluye lo siguiente:
Nombre | Descripción | Obligatorio |
---|---|---|
transactionId |
El identificador único enviado en el campo transactionId en respuesta a la solicitud POST para una transacción específica. Tipo: cadena |
Sí |
status |
Estado de procesamiento actual de la transacción. enum ( Status ) |
Sí |
errors |
Mensaje y código de error de la transacción fallida. Solo disponible cuando el estado de la transacción es "Fallido". Type: ErrorList |
No |
Ejemplo de respuesta:
{
"transactionId": "20190918190535-eef8cad8-418e-456f-ac72-789e2ee6813c",
"status": "Failure",
"errors": [
{
"code": "INVALID_ORDER_ID",
"message": "Invalid order ID.",
"details": "Please verify that the order ID is correct."
}
]
}
Lista de errores
The following table contains a list of all possible error codes for each message type. You should configure these error codes in your system and design a failure handling mechanism. Each error code has a message that explains the error and details that suggest how to resolve the error before retrying the transaction.
Código | Mensaje | Details | Message Type |
---|---|---|---|
INVALID_ORDER_ID | ID de pedido no válido. | Comprueba que el identificador del pedido es correcto. | Reconocimiento |
ACK_ALREADY_PROCESSED | Order confirmation already received for {orderId } | No es necesario realizar ninguna otra acción. | Reconocimiento |
INTERNAL_SERVER_ERROR | Error interno. Por favor, inténtelo de nuevo. | Reconocimiento | |
SHIP_METHOD_NOT_SUPPORTED | {ship_method } no es compatible con este canal | Obtenga una etiqueta para {ship_method }, usando tu configuración actual. | ShipLabel |
SHIP_METHOD_CHANGED | El método de envío de esta orden de compra ha cambiado de {old_ship_method } a {ship_method }. | Obtenga la etiqueta para {ship_method }, usando tu configuración actual. | ShipLabel |
INVALID_DIMENSION_UNIT | Solicitud rechazada: ID del pedido {shipmentId } tiene unidades de medida no válidas para la dimensión de los paquetes. | Asegúrese de que las dimensiones del paquete sean en pulgadas o cm | ShipLabel |
INVALID_PACKAGE_ID | Total {count } No válido o duplicado VendorPackageIds . | Please fix the Invalid or Duplicate VendorPackageIds and try again. | ShipLabel |
INVALID_ORDER_ID_WAREHOUSE_COMBINATION | Etiqueta de envío rechazada: ID del pedido {shipmentId } no pertenece al almacén {warehouseCode }. | Envía un identificador de pedido y un código de almacén válidos | ShipLabel |
INVALID_ORDER_STATUS | Solicitud rechazada: pedido {shipmentId } se ha cancelado. | El pedido no se puede enviar porque está cancelado. No intentes volver a imprimir las etiquetas. Si crees que el estado de este pedido es incorrecto, ponte en contacto con nosotros. | ShipLabel |
INVALID_WAREHOUSE_CODE | Etiqueta de envío rechazada: código de almacén no válido {warehouseCode }. | Asegúrate de enviar un código de almacén válido | ShipLabel |
SHIPMENT_NOT_MUTABLE | Solicitud rechazada: dimensiones del paquete para el identificador del pedido {shipmentId } no se puede actualizar con el estado actual. | No es necesario realizar ninguna otra acción. | ShipLabel |
NO_ITEMS_PRESENT | Solicitud rechazada: ID del pedido {shipmentId } tiene artículos no asignados a ningún paquete. | Asegúrese de que todos los artículos se corresponden con los paquetes. | ShipLabel |
PACKAGE_DIMENSION_NOT_VALID | Solicitud rechazada: ID del pedido {shipmentId } las dimensiones de los paquetes no son válidas. | Añada dimensiones válidas para su (s) paquete (s). | ShipLabel |
PACKAGE_WEIGHT_NOT_VALID | Solicitud rechazada: ID del pedido {shipmentId } tiene un peso no válido para los paquetes. | Añada un peso válido para su (s) paquete (s). | ShipLabel |
NO_SHIP_METHOD_ASSIGNABLE | Solicitud rechazada: En este momento, no se puede asignar ningún método de envío al número de pedido {shipmentId }. | No se puede asignar el método de envío. Comprueba que las dimensiones y el peso del paquete son correctos e imprime la etiqueta más cerca de la fecha de envío prevista. | ShipLabel |
INCONSISTENT_SHIP_METHODS | Solicitud rechazada: diferentes métodos de envío asignados a diferentes paquetes. | Intente enviar todos los artículos en una sola caja, si no es posible, póngase en contacto con nosotros. | ShipLabel |
INTERNAL_NON_RETRYABLE_FAILURE | Solicitud rechazada: hemos encontrado un problema al procesar tu solicitud. | Póngase en contacto con nosotros. | ShipLabel |
INTERNAL_RETRYABLE_FAILURE | Solicitud rechazada: hemos encontrado un problema al procesar tu solicitud. | Vuelva a intentarlo en unos minutos. Por favor, inténtelo de nuevo. Y si el problema persiste, ponte en contacto con nosotros. | ShipLabel |
EMPTY_PACKAGES | ¡Alerta de ASN! ID de pedido {shipmentId } tiene paquetes vacíos. | Para futuros envíos, asegúrate de que tu pedido tenga paquetes. | Envío |
EMPTY_ITEMS | ¡Alerta de ASN! ID de pedido {shipmentId } tiene artículos vacíos. | Para futuros envíos, asegúrate de añadir artículos a tu ASN. | Envío |
INTERNAL_FAILURE | Error interno. Por favor, inténtelo de nuevo. | Error interno. Por favor, inténtelo de nuevo. | Envío |
NO_SHIP_METHOD | ¡ASN rechazado! ¡No shipmethod encontrado para el (los) paquete (s) {packageIds }. | Por favor, añada su shipmethod e inténtalo de nuevo. | Envío |
SHIPMENT_UNSHIPPABLE | ASN rechazado: ID del pedido {shipmentId } no tiene un identificador de seguimiento o no ha procesado los documentos necesarios (como la etiqueta y la papeleta). | Asegúrese de procesar todos los documentos necesarios (como la etiqueta y el comprobante) y de proporcionar un identificador de seguimiento válido. | Envío |
SHIPMENT_IMMUTABLE | ¡ASN rechazado! El estado del envío no permite actualizar el envío. | No es necesario realizar ninguna otra acción. | Envío |
NOT_ALL_ITEMS_PRESENT | ASN rechazado: ID del pedido {shipmentId } ha enviado una cantidad en paquetes que no coincide con la cantidad del pedido y es posible que algunos artículos no tengan un paquete asignado. | Agregue artículos a los paquetes con la cantidad de envío correcta.Para artículos - {fnSku }, la cantidad esperada es {expectedQuantity } pero la cantidad proporcionada es {providedQuantity }. | Envío |
NO_ITEMS_PRESENT | ASN rechazado: ID del pedido {shipmentId } tiene artículos no asignados a ningún paquete. | Añade artículos a los paquetes. | Envío |
DIMENSION_OR_WEIGHT_NOT_VALID | ASN rechazado: ID del pedido {shipmentId } tiene paquetes con peso negativo o cero. | ASN rechazado: ID del pedido {shipmentId } tiene paquetes con peso negativo o cero. | Envío |
SHIP_METHOD_UNASSIGNABLE | ASN rechazado: ID del pedido {shipmentId } tiene un método de envío que no se puede procesar para los paquetes. | No se puede procesar el método de envío. Comprueba las dimensiones, el peso y el método de envío de tu paquete. | Envío |
INVALID_MESSAGE_PAYLOAD | Campo de entrada no válido {fieldName }. | Envío | |
VOC_NO_CARRIER_DETAILS | ¡ASN rechazado! Para el número de pedido: {shipmentId }, Los detalles del transportista no están presentes en el paquete {packageId }. | Añade el transportista o el código SCAC e inténtalo de nuevo. | Envío |
WEIGHT_NOT_PRESENT_FOR_PACKAGE | ¡ASN rechazado! ¡Para el pedido! {shipmentId }. No hay peso de paquete presente para el paquete {packageId }. | Añade peso e inténtalo de nuevo. | Envío |
INVALID_TRACKING_ID | ASN rechazado: identificador de seguimiento no válido para el paquete {packageId }. | Varía según el transportista y, en el caso de los vendedores de etiquetas de Amazon Ship, el transportista debe coincidir con la de la etiqueta de envío | Envío |
INVALID_WAREHOUSE_CODE | ASN rechazado: código de almacén no válido {warehouseCode }. | Comprueba que el código de almacén es correcto. | Envío |
ASN_ALREADY_PROCESSED | El ASN ya se ha recibido para {shipmentId }. | No es necesario realizar ninguna acción, la ASN ya está procesada. | Envío |
INVALID_ORDER_ID_WAREHOUSE | ASN rechazado: OrderID {orderId } no pertenece al almacén {warehouseCode }. | Comprueba que el código de almacén y el identificador del pedido son correctos. | Envío |
INTERNAL_SERVER_ERROR | Error interno. Por favor, inténtelo de nuevo. | Error interno. Por favor, inténtelo de nuevo. | Envío |
Updated 23 days ago