Orders
Endpoints used by ordering marketplaces and other order sources to send orders to a store and keep them up to date.
This domain lets an order source submit new orders as customers place them, reflect later changes as the orders progress, and backfill historical orders for reporting.
Create order
Pushes a new order into Otter for the store identified by the `X-Store-Id` header. Used by ordering marketplaces and other order sources when a customer places an order.
Update order
Replaces the order identified by `orderId` with the full order payload provided in the request body. Send the complete order representation (the same shape used to create it), not a partial patch.
Update order status
Transitions the order identified by `orderId` to a new status. Only `PREPARED`, `CANCELED`, and `FULFILLED` are accepted by this endpoint.
Update order customer payment
Updates the customer payment and financial breakdown for the order identified by `orderId`.
Update order delivery information
Updates the delivery information for the order identified by `orderId` — courier details, destination address, vehicle, last known location, and dropoff instructions. Use it to keep delivery state current as the courier progresses. The update is processed asynchronously and returns `202 Accepted`.
Upload past orders
Backfills already-completed orders for reporting and analytics. Uploaded orders are stored as **read-only** and are **not displayed** in operational views — they exist purely to make historical data available to BI and reporting tools. Up to 100 orders can be uploaded per request.