Receive Shipment
POST/api/purchase-order-shipments/receive
Receive goods against a purchase order shipment. Creates a receipt record and triggers inventory movements.
Authentication: Requires Bearer token.
Fields:
- purchase_order_id (conditional): Required if purchase_order_shipment_id is not provided
- purchase_order_shipment_id (optional): Specific shipment ID to receive. If omitted, receives for the entire PO
- received_at (required): Date/time of receipt
- warehouse_id (optional): Override destination warehouse
- shipment_date (optional): Used if a new shipment needs to be created automatically
- shipping_method_id (optional): Shipping method for auto-created shipment
- tracking (optional): Tracking number for auto-created shipment, max 255 characters
- receipt_lines (optional): Array of specific line quantities to receive. If omitted, receives all unreceived lines
- receipt_lines[].purchase_order_shipment_line_id (conditional): Shipment line ID. Required without purchase_order_line_reference or purchase_order_line_id
- receipt_lines[].purchase_order_line_id (conditional): PO line ID. Alternative to shipment_line_id
- receipt_lines[].purchase_order_line_reference (conditional): PO line reference code. Alternative to IDs
- receipt_lines[].quantity (required): Quantity received
- unexpected_items (optional): Items received that were not on the original PO
- unexpected_items[].product_id (conditional): Product ID. Required without product_sku
- unexpected_items[].product_sku (conditional): Product SKU. Required without product_id
- unexpected_items[].quantity (required): Quantity of unexpected item
- unexpected_items[].action (optional): Action for unexpected item (e.g., add_to_inventory)
- unexpected_items[].amount (optional): Unit cost for unexpected item
- unexpected_items[].description (optional): Description for unexpected item
Request
Responses
- 200
Successful response