Overview of Pick and Pack across Orders, Product Catalog, and Store Inventory
Set up your Product Catalog
Configure Store Inventory
Process Pick and Pack Orders
name
, imageUrls[]
, categories[]
, weight
, dimensions{depth,height,width}
, identifiers[{type,value}]
.externalIdentifier
, sku
, description
, attributes[]
(e.g., WEIGHTED
), and details
(sizeSpecification
, packSizeSpecification
, weightedItemInfo
).POST /v1/products
- Bulk create or update productsGET /v1/products
- Retrieve products with paginationavailable
(boolean).externalProductId
, externalStoreLocationId
, quantity
, valueCents
, currency
, location{aisle,bay,shelf}
.WEIGHTED
in your product catalogdetails.weightedItemInfo.valueCentsPerMeasurementUnit
for per-unit pricing (e.g., price per pound)POST /v1/inventory
- Bulk inventory updatesGET /v1/inventory
- Query inventory with filters:
externalStoreLocationId
: Filter by store locationexternalProductId
: Filter by productpageIndex
, numResultsPerPage
pick_and_pack
in the order.requirements
array when creating orders. See the complete list in Order Requirements.item.subItems[].sku
: optional SKU for the specific sub-item being picked.item.subItems[].substitution
: object describing substitution preferences and chosen replacements.
preference
: e.g., refund
or substitute
.source
: who made the decision (e.g., merchant, customer).substituteItems[]
: list of { sku, quantity, weight }
representing the chosen replacements.picking_complete
: emitted when item picking for the order has finished and it is ready for handoff to delivery. Track this status via your order retrieval endpoints and/or subscribe to status change events in Webhooks.deliver.pickedItems[]
. Each picked-item represents a picked unit or substituted item.
sku
, requested_sku
, id
, requested_id
, quantity
, scanned_code
, substitution_type
, substitution_source
, weight
.