Ir al contenido

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.

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": {}
}
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

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"
}
}
}

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
}
}

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
}
}

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
}
}

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
}
}

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"
}
}