Fulfillment
Acknowledge receipt of orders.
PUT
/fulfillment/distribution_centers/{distribution_center_code}/acknowledgementsAcknowledge receipt of orders so that they are removed from the fulfillment queue.
Generate a packing slip for this order for the given distribution center.
GET
/fulfillment/distribution_centers/{distribution_center_code}/orders/{order_id}The packing slip PDF that is returned is base 64 encoded
Mark orders as shipped
POST
/fulfillment/distribution_centers/{distribution_center_code}/shipmentsStore the tracking information and mark the order shipped for this distribution center.
Retrieve distribution centers
GET
/fulfillment/distribution_centersRetrieves the distribution centers that this user has access to.
Retrieve orders queued up for this distribution center.
GET
/fulfillment/distribution_centers/{distribution_center_code}/ordersRetrieves up to 100 orders that are queued up in this distribution center.
Update inventory
POST
/fulfillment/distribution_centers/{distribution_center_code}/inventoryUpdate the inventory for items associated with this distribution center
Webhooks
The following webhook events are available for this resource. See Webhooks for how delivery, retries, and versioning work.
| Event | Description | Reflow | Expandable |
|---|---|---|---|
fulfillment_hold | Fired when an order is held for review | — | — |
fulfillment_transmit | Fired to transmit an order to the fulfillment house | — | — |
Receiving these events
- Payload: each delivery is a
POSTwhose JSON body is an array of events, even when it carries one. Each element has a single key, the event name, whose value is the object, for example[{"fulfillment_hold": {...}}]. - Contents: the object includes only the parts in the webhook's expansion. Expansions appear when you edit the webhook after creating it.
- Respond within 30 seconds. Store or queue the payload and do the work in a background job.
- Batching: one delivery can bundle several events. The webhook sets how many (10 or more) and the maximum payload size (up to 900K).
- HTTPS: use it. It is required whenever the payload includes customer information.
- Testing: the webhook's test button sends a delivery, and its log shows each one. To resend existing records, for example to backfill a new receiver, request a reflow.
More: Webhooks, Creating a simple webhook (with a sample payload), receiver samples in PHP and Python
Was this page helpful?