Referencia
Pedidos
Lista los pedidos con sus líneas de artículos, avanza su estado a lo largo del ciclo de vida en cocina y emite reembolsos completos. Los cambios de estado y los reembolsos disparan eventos de webhook.
/api/v1/ordersLista paginada de pedidos, incluidos los pedidos anticipados, con sus líneas de artículos.
Consulta: restaurantId, status, limit (≤100), cursor
{
"data": [
{
"id": "clo...",
"restaurantId": "clw...",
"bookingId": null,
"type": "TAKEAWAY",
"status": "DELIVERED",
"subtotal": 24.00,
"tax": 2.40,
"tip": 0,
"total": 26.40,
"currency": "EUR",
"paidAt": "2025-12-21T19:45:12.000Z",
"refundedAt": null,
"createdAt": "2025-12-21T19:30:00.000Z",
"items": [
{ "id": "...", "menuItemId": "...", "name": "Carbonara", "quantity": 2, "price": 12.00, "notes": null }
]
}
],
"nextCursor": null
}/api/v1/orders/{id}/statusAvanza el estado de un pedido. Dispara order.status_changed.
curl -X PATCH https://www.openalacarte.com/api/v1/orders/clo.../status \
-H "Authorization: Bearer oac_live_<your-key>" \
-H "Content-Type: application/json" \
-d '{"status":"PREPARING"}'Transiciones: PENDING → CONFIRMED → PREPARING → READY → DELIVERED, además de CANCELLED desde cualquier estado no terminal. REFUNDED se alcanza a través del endpoint de reembolso.
/api/v1/orders/{id}/refundReembolso completo de un pedido pagado. Se debita el saldo de Stripe Connect del restaurante y la comisión de la plataforma se revierte automáticamente. Dispara order.refunded.
curl -X POST https://www.openalacarte.com/api/v1/orders/clo.../refund \
-H "Authorization: Bearer oac_live_<your-key>" \
-H "Content-Type: application/json" \
-d '{"reason":"Wrong item delivered"}'