type source and externalOrderId.
Also send a stable Idempotency-Key for each external order:
Safe Retry
When Plato receives the same order identity again, it returns the original order with200 OK:
500 responses with the same externalOrderId and Idempotency-Key.
Existing Orders
When an order already exists, Plato returns the stored order instead of creating another one. Generate a new external order id only for a genuinely new order.Validation Error
Invalid fields and inconsistent totals return422 Unprocessable Entity with field paths:
Endpoint Status Codes
If an aggregator value intype does not belong to an app installed in the API key workspace, Plato does not create or update an order:
Recommended Backoff
For a timeout or500, retry after approximately 1, 2, 5, 10, and 30 seconds. Stop after a bounded number of attempts and place the order in a reconciliation queue.
Log the X-Request-Id, external order id, HTTP status, and Plato order id. Do not log the API key or the full customer payload.