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

# Staging et production

> Tester tout le parcours sans rien envoyer ni débiter.

Chaque projet a deux environnements. Ils partagent la même adresse d’API ; c’est la clé qui choisit.

| Comportement | Staging | Production |
| - | - | - |
| Validations (expéditeur, pays, longueur, limites, portées) | identiques | identiques |
| Solde SMS | jamais lu ni débité | réservé, puis débité |
| SMS, e-mails, WhatsApp | aucun ne part | envoyés |
| Réponse d’un envoi SMS | `simulated: true`, `reserved: 0` | `simulated: false` |
| Statuts et accusés de réception | simulés : `sent`, puis `delivered` deux secondes après | réels |
| Webhooks | envoyés, avec `"environment": "staging"` | envoyés |

Le staging fait échouer ce qui échouera en production — expéditeur non validé, pays non ouvert, texte trop long — sans coûter une unité.

Les données sont **séparées** : les envois, les journaux et les webhooks d’un environnement ne se voient pas dans l’autre. Les contacts, les listes et les modèles appartiennent au projet.

## Numéros de simulation

En staging, tout numéro est accepté puis remis, sauf ceux-ci, qui jouent un scénario d’échec :

| Numéro | Scénario |
| - | - |
| `+221700000001` | refusé à l’envoi : `failed`, `INVALID_NUMBER` |
| `+221700000002` | parti, puis non remis : `failed`, `UNDELIVERED` |
| `+221700000003` | parti, puis expiré : `expired`, `EXPIRED` |
| `+221700000004` | délai dépassé : `outcome_unknown`, jamais renvoyé |
| `+221700000005` | opérateur indisponible : `failed`, `PROVIDER_UNAVAILABLE` |

## Passer en production

**1. Créez une clé de production**

Même préréglage qu’en staging, environnement **production**. Elle commence par `dxn_prod_`.

**2. Ouvrez vos canaux**

Un solde d’unités pour le SMS, un domaine vérifié pour l’e-mail, un numéro relié pour WhatsApp. La page **Canaux** du dashboard dit ce qu’il reste à faire pour chacun.

**3. Demandez votre nom d’expéditeur**

`DEXCHANGE` reste utilisable, mais vos clients reconnaîtront mieux votre marque. Voir [Noms d’expéditeur](https://docs.dexnotify.com/sms/expediteurs.md).

**4. Créez vos webhooks de production**

Un webhook appartient à un environnement : celui de staging ne reçoit rien de la production.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.