Import an immediate pickup/delivery order from your server using orders:write.
The business comes from the token. Supply its branch, menu and Kivly product IDs.
Prices and totals are gross integer cents declared by your channel; Kivly validates
arithmetic and resolves taxes and kitchen routing from its own configuration.
PAID_EXTERNALLY records payment collected outside Kivly; this endpoint never charges
a card. Unpaid orders enter the POS for collection. The menu's acceptance mode applies.
The order source is api; metadata.integration_channel identifies your website.
Reuse channel + external_id and the same body after a timeout (200 replay); a changed
body returns 409. A 503 can mean the order is saved but POS synchronization is pending:
retry the identical request. No provider dispatch, scheduled orders or table orders here.
Existing GET /orders/{order_id}, PATCH /orders/{order_id}/status and order.* webhooks
provide follow-up. A 201 confirms server/POS persistence, not physical printing.
Integration access is restricted to the credential's location. Pagination, monetary units and response envelopes are endpoint-specific; use the schema below. Do not assume that POST/PATCH requests are safe to retry after a timeout.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
409Reference already used with different content, or inactive branch/menu.
