Partial delivery via API
Partial delivery is now possible in Katana, meaning you can partially fulfill and ship orders in Katana. Your existing integrations will continue to work as before, but an update is required to support the partial delivery feature.
When fulfilling Sales orders via API, you should create fulfillments via the fulfillment endpoint and sales order statuses will update accordingly.
For this, we've added the following endpoints to the sales order fulfillment resource:
- POST /sales_order_fulfillments
- GET /sales_order_fulfillments
- PATCH /sales_order_fulfillments/{id}
- DELETE /sales_order_fulfillments/{id}
Since a sales order can have multiple fulfillments, the following fields should now be used via the sales order fulfillment endpoints instead of the sales order endpoints: picked_date, conversion_rate, conversion_date, tracking_number, and tracking_url.
This update also affects some other existing endpoints:
- GET /sales_orders
- picked_date - If multiple fulfillments exist for a sales order, the latest picked_date is used
- status - New statuses PARTIALLY_PACKED and PARTIALLY_DELIVERED have been added
- conversion_rate and conversion_date - If multiple fulfillments exist for a sales order row, the latest date and corresponding rate are used.
- GET /sales_order_rows
- conversion_rate and conversion_date - If multiple fulfillments exist for a sales order row, the latest date and corresponding rate are used.