Process a Shipment

Learn how to process a shipment

Learn how to process a shipment.

Prerequisites

To complete this tutorial, you need:

Overview

The workflow for processing a shipment is as follows:

StepOperation
1. Acknowledge the shipmentprocessShipment: Go to step 2.
2. Create packages for the shipmentcreatePackages: Go to step 3.
3. Get shipping options for the shipmentupdatePackage: Stay on step 3.
retrieveShippingOptions: Go to step 4.
4. Generate and retrieve the shipment's invoiceupdatePackage: Go to step 3.
generateInvoice: Go to step 5.
5. Generate shipping labelsupdatePackage: Go to step 3.
retrieveInvoice: Stay on step 5.
generateShipLabel: Go to step 6.
6. Mark the order as shippedretrieveShipLabel: Stay on step 6.
updatePackageStatus: Done.

Step 1. Acknowledge the shipment

Call the processShipment operation with the shipmentId of the shipment you want to process. Set the operation query parameter to CONFIRM to confirm the shipment.

Step 2. Create packages for the shipment

Call the createPackages operation with the shipmentId of the shipment you want to process and the list of packages in the shipment.

Step 3. Get shipping options for the shipment

Call the retrieveShippingOptions operation with the shipmentId of the shipment and packageId of the package to receive a list of shipping options for the package from which the seller can choose. The response to this operation is null for the Seller Flex channel.

Step 4. Generate and retrieve the shipment's invoice

Call the generateInvoice operation to generate the invoice for the shipment. This operation returns as encoded Base64 text that you can decode and convert to PDF to print.

You can call retrieveInvoice with the same parameters you supplied to generateInvoice to retrieve the invoice again.

These operations are not supported for the Easy Ship channel, except in the India marketplace.

Step 4b. Update the package [optional]

After you generate the invoice, you might need to update information about the package, such as IMEI serial number or package dimensions. If you need to update package information, call the updatePackage operation with the shipmentId and packageId of the package, and supply updated package information in the body of the request.

Step 5. Generate shipping labels

Call the generateShipLabels operation with the operation query parameter set to GENERATE to generate shipping labels for the shipment. To retrieve the same shipping labels again, call generateShipLabels again and set operation to GENERATE.

Step 6. Mark the order as shipped

Call the updatePackageStatus operation and set the status value to SHIPPED.

📘

Note

This is an optional step for the Seller Flex and Easy Ship programs in the India, UAE, Turkey, and Saudi Arabia marketplaces. Amazon automatically updates the status to SHIPPED after the shipment is scanned at the logistics partner during order pickup. If the selling partner also marks the order as shipped, they receive a duplicate request exception in case the order is already scanned by the delivery associate.