Eventos
Cada evento que OrderFast envía a tu endpoint sigue una estructura consistente. El campo type indica qué ocurrió, y data contiene el recurso afectado con su estado actual.
Estructura base
Sección titulada «Estructura base»Todos los eventos comparten estos campos:
| Campo | Tipo | Descripción |
|---|---|---|
id |
string |
Identificador único del evento (ej. evt_01J...) |
type |
string |
Tipo de evento (ej. order.created) |
created_at |
string |
Fecha ISO-8601 en que ocurrió el evento |
location_id |
string |
UUID de la location donde ocurrió |
data |
object |
Payload del recurso afectado |
{ "id": "evt_01J...", "type": "order.created", "created_at": "2026-07-07T12:00:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": {}}Catálogo de eventos
Sección titulada «Catálogo de eventos»| Evento | Cuándo se dispara |
|---|---|
order.created |
Se crea una nueva orden |
order.updated |
Se modifica una orden existente |
order.cancelled |
Una orden es cancelada |
order.completed |
Una orden se completa |
payment.created |
Se registra un nuevo pago |
payment.updated |
Se actualiza un pago |
payment.completed |
Un pago se confirma como completado |
payment.rejected |
Un pago es rechazado |
product.created |
Se crea un producto |
product.updated |
Se actualiza un producto |
product.deleted |
Se elimina un producto |
stock.updated |
Cambia el stock de un producto |
turn.open |
Se abre un turno operativo |
turn.updated |
Se actualizan métricas de un turno en curso |
turn.closed |
Se cierra un turno |
Ejemplos de payloads
Sección titulada «Ejemplos de payloads»order.created
Sección titulada «order.created»Se dispara cuando se crea una orden. Incluye ítems y estado del pago asociado.
{ "id": "evt_01JORDERCREATED", "type": "order.created", "created_at": "2026-07-07T12:00:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "ord_123", "number": 24445, "status": "pending", "total": 21100, "items": [ { "product_id": "prod_1", "name": "Gin Tonic", "quantity": 2, "price": 6500 } ], "payment": { "id": "pay_123", "status": "pending" } }}payment.created
Sección titulada «payment.created»Se dispara al registrar un pago vinculado a una orden.
{ "id": "evt_01JPAYMENTCREATED", "type": "payment.created", "created_at": "2026-07-07T12:00:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "pay_123", "order_id": "ord_123", "status": "pending", "amount": 21100 }}payment.completed
Sección titulada «payment.completed»Se dispara cuando un pago se confirma exitosamente.
{ "id": "evt_01JPAYMENTCOMPLETED", "type": "payment.completed", "created_at": "2026-07-07T12:01:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "pay_123", "order_id": "ord_123", "status": "completed", "amount": 21100 }}turn.open
Sección titulada «turn.open»Se dispara al abrir un turno operativo.
{ "id": "evt_01JTURNOPEN", "type": "turn.open", "created_at": "2026-07-07T10:00:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "turn_123", "batch_number": "BATCH-001", "started_at": "2026-07-07T10:00:00.000Z", "ended_at": null, "total_orders": 0, "total_collected": 0, "average_ticket": 0, "closed_by_user_id": null }}turn.updated
Sección titulada «turn.updated»Se dispara cuando cambian las métricas de un turno en curso.
{ "id": "evt_01JTURNUPDATED", "type": "turn.updated", "created_at": "2026-07-07T15:30:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "turn_123", "batch_number": "BATCH-001", "started_at": "2026-07-07T10:00:00.000Z", "ended_at": null, "total_orders": 12, "total_collected": 85000, "average_ticket": 7083.33, "closed_by_user_id": null }}turn.closed
Sección titulada «turn.closed»Se dispara al cerrar un turno con el resumen final.
{ "id": "evt_01JTURNCLOSED", "type": "turn.closed", "created_at": "2026-07-07T18:00:00.000Z", "location_id": "4f0c8810-6881-4674-96be-880fc32176a7", "data": { "id": "turn_123", "batch_number": "BATCH-001", "started_at": "2026-07-07T10:00:00.000Z", "ended_at": "2026-07-07T18:00:00.000Z", "total_orders": 42, "total_collected": 250000, "average_ticket": 5952.38, "closed_by_user_id": "user_123" }}