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

# Sandbox

> Comprenda el entorno de prueba y aprenda cómo integrarlo de forma segura, sin enviar mensajes reales.

<Tip>
  Sandbox es el **simulador de vuelo** de Notifique: practicas la integración completa sin arriesgarte a recibir un mensaje real ni gastar créditos.
</Tip>

## ¿Qué es la zona de pruebas?

Es el entorno de **prueba** de Notifique. La API es la misma (`https://api.notifique.dev/v1/...`); lo que cambia es la clave: usa `sk_test_...` en lugar de `sk_live_...`.

Piense en un simulador de vuelo: la misma cabina, las mismas maniobras, nadie despega.

## ¿Para qué sirve?

Con sandbox puedes:

* **Integrar** tu aplicación sin enviar SMS, correos electrónicos o WhatsApp reales
* **Probar** webhooks, plantillas y flujos antes de la puesta en marcha
* **Simular** el estado de entrega (entregado, leído, fallido) en la bandeja de entrada de Sandbox
* **Validar** cargas útiles y errores sin debitar créditos

Nada en Sandbox afecta los datos de producción o los envíos.

## ¿Cuándo usarlo?

| Situación                            | ¿Usar sandbox?        |
| ------------------------------------ | --------------------- |
| Desarrollar o probar una integración | **Sí**                |
| Validar webhooks en su servidor      | **Sí**                |
| Enviar un mensaje a un cliente real  | No. Use `sk_live_...` |

## Cómo utilizar

### 1. Cree una clave de prueba

Abra **Desarrollador → Claves API**, cree una clave **Sandbox** y copie `sk_test_...` inmediatamente. ¿Necesita ayuda? Consulte [Claves API](/es/guides/api-key/index).

### 2. Llame a la API como de costumbre

Misma URL, mismos endpoints. Solo cambia la clave en el encabezado:

No hay encabezado de entorno extra. La clave lo define todo.

### 3. Seguimiento en la bandeja de entrada Sandbox

Abra **Desarrollador → Bandeja de entrada Sandbox**. Allí puede:

* **Revisar** cada carga útil de envío
* **Liberar** mensajes programados con **Liberar ahora**
* **Simular** estado: entregado, leído, clic, fallido (por canal)

### 4. Probar webhooks

Los eventos usan los **mismos nombres** que en producción. La carga útil incluye **`sandbox: true`** en `data` para filtrar en el mismo endpoint. Más en [Webhooks](/es/guides/webhooks/index).

### 5. Pasar a producción

Cuando esté listo, cambie `sk_test_...` por `sk_live_...` en las mismas rutas. Como pasar del simulador al vuelo real.

## Qué funciona y qué no

| Funciona en sandbox                    | Requiere producción (`sk_live_`)                                             |
| -------------------------------------- | ---------------------------------------------------------------------------- |
| SMS, correo, push y RCS simulados      | Entrega real a teléfono o bandeja                                            |
| WhatsApp y Telegram simulados          | QR real, conexión de número                                                  |
| Webhooks con `sandbox: true`           | Proveedores reales de punta a punta                                          |
| Plantillas y cargas útiles de prueba   | Verificar dominio de correo (DNS)                                            |
| Programar y liberar en bandeja Sandbox | Plantillas oficiales Meta en producción (aprobación WABA + facturación Meta) |

### WhatsApp oficial (Cloud API) en sandbox

Con `sk_test_`, `POST /v1/whatsapp/messages` y `POST /v1/templates/send` **no** llaman a Graph ni a la puerta de pago de Meta:

* Sin ping de token → **no** marca la instancia real como `DISCONNECTED`
* Sin `META_PAYMENT_METHOD_REQUIRED` / `META_TEMPLATE_REQUIRED` reales
* La carga útil aparece en la **bandeja Sandbox** como en otros canales

Use producción (`sk_live_`) para validar una plantilla aprobada, la ventana de 24 h y una tarjeta en WhatsApp Manager. Detalles: [Plantillas oficiales Meta](/es/whatsapp-api/como-funciona/templates-oficiais-meta).

<Note>
  Las operaciones que dependen de un proveedor real (QR de WhatsApp, DNS de correo electrónico) pueden devolver **403** o **501** en sandbox.
</Note>

## Límites

| Regla             | Detalle                                                                                            |
| ----------------- | -------------------------------------------------------------------------------------------------- |
| **Límite diario** | Hasta **50 mensajes/día (UTC)** por espacio de trabajo. Por encima → **429** `SANDBOX_DAILY_LIMIT` |
| **Retención**     | Cada ítem de la bandeja Sandbox expira en **7 días**                                               |
| **Programación**  | Permanece **SCHEDULED** hasta hacer clic en **Liberar ahora**                                      |
| **Facturación**   | Sandbox **no debita** créditos ni saldo                                                            |

## Sandbox vs producción

|          | Sandbox                       | Producción  |
| -------- | ----------------------------- | ----------- |
| Clave    | `sk_test_`                    | `sk_live_`  |
| Entrega  | Simulada en bandeja Sandbox   | Real        |
| Créditos | No se consumen                | Se consumen |
| Webhook  | `sandbox: true` en carga útil | Evento real |

***

## Próximos pasos

* [Empiece aquí](/es/guides/introducao/comece-aqui): envíe su primer mensaje de prueba
* [Claves API](/es/guides/api-key/index): crear y usar `sk_test_` y `sk_live_`
* [Webhooks](/es/guides/webhooks/index): recibir eventos simulados en su servidor
