Marketplaces / Amazon SP API - Technical Scope / Amazon SP API - Vendor Technical Scope / Amazon SP API Vendor Procurement / Amazon Vendor Procurem...

Amazon Vendor Procurement Get Order Status IN PROGRESS (Phase2)

Summary of Changes: (The purpose of this table is to keep traceability and Product team to highlight the things that were changed into the scope, based on comments or discussions)

Version Date Created / Updated Notes
v1.0 09.02.2024 Bogomil Pavlov First publish

All validations, triggers and standardizations are as per

Order management general requirements

Get Order Status

Returns purchase order statuses based on the filters that you specify. Date range to search must be NO more than 7 days. You can return a list of purchase order statuses using the available filters, or a single purchase order status by providing the purchase order number. Using this request we can check and update what is accepted or rejected and what is received.

API /vendor/orders/v1/purchaseOrdersStatus

Doc: https://developer-docs.amazon.com/sp-api/docs/vendor-orders-api-v1-reference#get-vendorordersv1purchaseordersstatus

Available parameters:

Name Description
limit The limit to the number of records returned. Default value is 100 records.Minimum : 1Maximum : 100
sortOrder Sort in ascending or descending order by purchase order creation date.
nextToken Used for pagination when there are more purchase orders than the specified result size limit.
createdAfter Purchase orders that became available after this timestamp will be included in the result. Must be in ISO-8601 date/time format.
createdBefore Purchase orders that became available before this timestamp will be included in the result. Must be in ISO-8601 date/time format.
updatedAfter Purchase orders for which the last purchase order update happened after this timestamp will be included in the result. Must be in ISO-8601 date/time format.
updatedBefore Purchase orders for which the last purchase order update happened before this timestamp will be included in the result. Must be in ISO-8601 date/time format.
purchaseOrderNumber Provides purchase order status for the specified purchase order number.
purchaseOrderStatus Filters purchase orders based on the specified purchase order status. If not included in filter, this will return purchase orders for all statuses.
itemConfirmationStatus Filters purchase orders based on their item confirmation status. If the item confirmation status is not included in the filter, purchase orders for all confirmation statuses are included.
itemReceiveStatus Filters purchase orders based on the purchase order's item receive status. If the item receive status is not included in the filter, purchase orders for all receive statuses are included.
orderingVendorCode Filters purchase orders based on the specified ordering vendor code. This value should be same as 'sellingParty.partyId' in the purchase order. If not included in filter, all purchase orders for all the vendor codes that exist in the vendor group used to authorize API client application are returned.
shipToPartyId Filters purchase orders for a specific buyer's Fulfillment Center/warehouse by providing ship to location id here. This value should be same as 'shipToParty.partyId' in the purchase order. If not included in filter, this will return purchase orders for all the buyer's warehouses used for vendor group purchase orders.

The parameters which we want to use are”

nextToken - used for pagination

updateAfter- Overlap 7 days only?

updateBefore- this will be always the current time in ISO-8601 format

limit - Always 100

Sample Request: GET [https://sellingpartnerapi-na.amazon.com](https://sellingpartnerapi-na.amazon.com/vendor/directFulfillment/transactions/v1/transactions/20190904190535-eef8cad8-418e-4ed3-ac72-789e2ee6214a)/vendor/orders/v1/purchaseOrdersStatus

Sample Response: Status 200

{
  "payload": {
    "ordersStatus": [
      {
        "purchaseOrderNumber": "L8266355",
        "purchaseOrderStatus": "OPEN",
        "purchaseOrderDate": "2019-07-16T19:17:34.304Z",
        "lastUpdatedDate": "2019-07-17T19:17:34.304Z",
        "sellingParty": {
          "partyId": "999US"
        },
        "shipToParty": {
          "partyId": "NAG1"
        },
        "itemStatus": [
          {
            "itemSequenceNumber": "1",
            "buyerProductIdentifier": "ABC123434",
            "vendorProductIdentifier": "028877454078",
            "netCost": {
              "amount": "10.2",
              "currencyCode": "USD"
            },
            "listPrice": {
              "amount": "10.2",
              "currencyCode": "USD"
            },
            "orderedQuantity": {
              "orderedQuantity": {
                "amount": 10,
                "unitOfMeasure": "Cases",
                "unitSize": 5
              },
              "orderedQuantityDetails": [
                {
                  "updatedDate": "2019-07-16T19:17:34.304Z",
                  "orderedQuantity": {
                    "amount": 10,
                    "unitOfMeasure": "Cases",
                    "unitSize": 5
                  }
                }
              ]
            },
            "acknowledgementStatus": {
              "confirmationStatus": "PARTIALLY_ACCEPTED",
              "acceptedQuantity": {
                "amount": 3,
                "unitOfMeasure": "Cases",
                "unitSize": 5
              },
              "rejectedQuantity": {
                "amount": 7,
                "unitOfMeasure": "Cases",
                "unitSize": 5
              },
              "acknowledgementStatusDetails": [
                {
                  "acknowledgementDate": "2019-07-17T19:17:34.304Z",
                  "acceptedQuantity": {
                    "amount": 10,
                    "unitOfMeasure": "Cases",
                    "unitSize": 5
                  },
                  "rejectedQuantity": {
                    "amount": 0,
                    "unitOfMeasure": "Cases",
                    "unitSize": 5
                  }
                }, 
                {
                  "acknowledgementDate": "2019-07-17T20:10:34.304Z",
                  "acceptedQuantity": {
                    "amount": 3,
                    "unitOfMeasure": "Cases",
                    "unitSize": 5
                  },
                  "rejectedQuantity": {
                    "amount": 7,
                    "unitOfMeasure": "Cases",
                    "unitSize": 5
                  }
                }
              ]
            }
          }
        ]
      }
    ]
  }
}

Mapping:

Amazon Field Hemi Field Comment
ordersStatus
purchaseOrderNumber Order > Marketplace Order Id Used this id to map the order in Hemi.
purchaseOrderState Order > Marketplace Status Mapping provided below for our internal status
purchaseOrderDate N/A
lastUpdatedDate Order > Order Modified Time ISO-8601 date/time format.
sellingParty
partyId N/A
address N/A
name N/A
addressLine1 N/A
addressLine2 N/A
addressLine3 N/A
city N/A
county N/A
district N/A
stateOrRegion N/A
postalCode N/A
countryCode N/A
phone N/A
taxInfo
taxRegistrationType N/A
taxRegistrationNumber N/A
shipToParty
partyId N/A
address
name N/A
addressLine1 N/A
addressLine2 N/A
addressLine3 N/A
city N/A
county N/A
district N/A
stateOrRegion N/A
postalCode N/A
countryCode N/A
phone N/A
itemStatus
itemSequenceNumber N/A Numbering of the item on the purchase order. The first item will be 1, the second 2, and so on.
buyerProductIdentifier
vendorProductIdentifier Order Item > SKU Used to map the correct order item
netCost
currencyCode N/A
amount N/A
listPrice
currencyCode N/A
amount N/A
orderedQuantity
orderedQuantity
amount N/A
unitOfMeasure N/A
unitSize N/A
orderedQuantityDetails
updatedDate N/A
orderedQuantity
amount N/A
unitOfMeasure N/A
unitSize N/A
acknowledgementStatus
confirmationStatus ` N/A
acceptedQuantity
amount Order Acknowledgement Rows > Accepted Quantity
unitOfMeasure N/A
unitSize N/A
rejectedQuantity
amount Order Acknowledgement Rows > Rejected Quantity
unitOfMeasure N/A
unitSize N/A
acknowledgementStatusDetails
acknowledgementDate N/A
acceptedQuantity N/A
amount N/A
unitOfMeasure N/A
unitSize N/A
rejectedQuantity
amount N/A
unitOfMeasure N/A
unitSize N/A

Based on the response we want to keep track on the order status and order item acknowledgment. To follow through the whole mapping we will map the order using the Order > Marketplace Order Id then we will have to add the Order Acknowledgement with Status = “Completed” and date = “Current Date” then based on the Product In Order > SKU we will be able to get the Product In Order > ID which we want to store in Order Acknowledgement Row > Order Item Id with the relevant Order Acknowledgement Rows > Accepted Quantity and Order Acknowledgement Rows > Rejected Quantity on which we have to add the Order Acknowledgement Row Lines which we will internally track based on the Accepted Quantity and Rejected Quantity. For each Accepted Quantity we want to add a line with status “Accepted” and for each Rejected Quantity to add a line with status “Rejected”. Also if we have Order > Acknowledgment Status = Rejected or Accepted and we receive an new product in order and the Accepted/Rejected Quantity is not equal to the Order Total Quantity we want to update Order > Acknowledgment Status = Partially Accepted.

Please note we want to be able once the Acknowledgment is added in Hemi if we receive different accepted/rejected products afterward to update them accordingly. Since Amazon are able to reject/accept the order anytime until it got shipped.

Status Mapping:

Amazon Status Hemi Status Comment
New Awaiting Acknowledge The purchase order is newly created and needs to be acknowledged by vendor.
Acknowledged Ready For Shipping The purchase order has been acknowledged by vendor.
Closed Shipped/Cancelled The purchase order is closed and no further action is required from the vendor. PO can be in closed state for many reasons such as order is rejected by vendor, order is cancelled by Amazon or order is fully received by Amazon.
If all products are rejected we want to set the Status and Cancelled else we want to use Shipped.

Limits

Rate (requests per second) Burst
10 10
Is this article helpful?
0 0 0