> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fire.rest/llms.txt
> Use this file to discover all available pages before exploring further.

# Notificaciones de estado de orden

> Recibe actualizaciones de estado de orden desde Fire.

A medida que una orden avanza por Fire (aceptada, en preparación, lista, despachada, etc.), Fire envía eventos `order.status_changed` a tu endpoint de webhook.

## Flujo

```
Fire emite order.status_changed → Tu sistema recibe el evento → Tu sistema actúa sobre él
```

## Payload del evento

```json theme={null}
{
  "event": "order.status_changed",
  "data": {
    "fire_order_id": "fire_order_abc",
    "external_order_id": "uber_order_9876",
    "channel_id": "channel_abc123",
    "status": "in_preparation",
    "previous_status": "accepted",
    "updated_at": "2025-01-15T14:35:00Z"
  }
}
```

## Estados de orden

| Estado           | Descripción                                |
| ---------------- | ------------------------------------------ |
| `received`       | Orden inyectada exitosamente en Fire       |
| `accepted`       | El restaurante aceptó la orden             |
| `in_preparation` | La cocina comenzó a preparar la orden      |
| `ready`          | La orden está lista para retiro o despacho |
| `dispatched`     | Entregada al repartidor                    |
| `delivered`      | Entregada al cliente                       |
| `cancelled`      | La orden fue cancelada                     |

## Pasos de procesamiento

<Steps>
  <Step title="Verifica la firma">
    Valida `X-Fire-Signature`. Consulta [Autenticación](/es/authentication).
  </Step>

  <Step title="Confirma de inmediato">
    Devuelve `200 OK` antes de procesar.
  </Step>

  <Step title="Busca la orden">
    Usa `external_order_id` para encontrar la orden en tu sistema.
  </Step>

  <Step title="Actúa sobre el cambio de estado">
    Notifica a los agregadores, actualiza tu base de datos, dispara workflows — lo que tu integración requiera.
  </Step>
</Steps>

## Cancelaciones

Si `status` es `cancelled`, actúa sobre él de inmediato. Si tu sistema retransmite órdenes a agregadores, algunos requieren confirmación de cancelación dentro de una ventana de tiempo corta.
