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

# Sandbox

> Prueba tu integración contra tu restaurante real, sin efectos reales

Las llaves de **sandbox** empiezan con `fd_test_` y se generan igual que las
de producción — panel de administración → **Integraciones → API pública** →
tipo **Sandbox (pruebas)**. Operan sobre **tu propio restaurante** (tu menú,
tus sucursales, tus reglas de envío reales), pero en modo prueba:

```bash theme={null}
Authorization: Bearer fd_test_xxxxxxxxxxxxxxxx
```

## Qué cambia en modo sandbox

| Área                                  | Comportamiento con llave `fd_test_`                                                                                                                                                            |
| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Menú, sucursales, cotización de envío | Lectura real: lo mismo que verá la llave de producción                                                                                                                                         |
| Crear pedidos                         | Se crean marcados como **prueba**: llegan al KDS con etiqueta "PRUEBA", pero no descuentan stock, no suman a la analítica, no se facturan, no acumulan puntos y no envían push ni correos      |
| Ver pedidos                           | `GET /orders` solo devuelve pedidos de prueba (y la llave de producción solo los reales: cada llave ve su mundo)                                                                               |
| Pago online                           | `payment_link.payment_url` apunta a un **simulador de pago**: eliges "exitoso" o "fallido" y el flujo completo (confirmación + redirección a tu `return_url`) ocurre igual que con Fintoc real |
| Cambiar estados                       | Real sobre pedidos de prueba, con las mismas reglas del KDS; nunca despacha couriers ni envía correos                                                                                          |
| Actualizar stock / abrir-cerrar local | **Simulado**: la respuesta es idéntica a la real, pero el inventario y el estado del local no se tocan (`"simulated": true`)                                                                   |
| Local cerrado                         | No bloquea: puedes crear pedidos de prueba a cualquier hora                                                                                                                                    |

## Flujo típico

<Steps>
  <Step title="Genera tu llave sandbox">
    Integraciones → API pública → **Sandbox (pruebas)** → Generar API key.
    Siempre incluye lectura y escritura. Máximo 2 activas.
  </Step>

  <Step title="Desarrolla contra los mismos endpoints">
    Misma URL base, mismos contratos. El código de tu integración no cambia.
  </Step>

  <Step title="Prueba el pago con el simulador">
    Crea un pedido con `payment: "online"`, abre el `payment_url` y simula un
    pago exitoso: el pedido pasa a `recibido` y tu `return_url` recibe
    `?payment=success`.
  </Step>

  <Step title="Pásate a producción">
    Genera una llave de **Producción** (con escritura si corresponde) y
    reemplaza la llave. Nada más cambia.
  </Step>
</Steps>

<Note>
  Los pedidos de prueba quedan visibles en tu panel con la etiqueta
  **PRUEBA** para que valides el flujo completo en la cocina. Puedes
  cancelarlos o dejarlos: no afectan ventas, stock ni reportes.
</Note>
