3 min de lecture

Migrer de Vonage/Nexmo vers EnvoiSMS : checklist complète

Migrer vonage nexmo envoisms : guide technique avec exemples de code pour les développeurs au Maroc.

De nombreuses entreprises marocaines et centres d'appels utilisent Vonage (anciennement Nexmo) pour leurs envois de [SMS en masse](/fr/cas-usage/marketing) ou leurs alertes transactionnelles. Nexmo a longtemps été la référence des développeurs pour sa simplicité.

Cependant, face à l'augmentation des frais de routage vers le Maroc (+212) par les agrégateurs mondiaux et au besoin de conformité CNDP (hébergement local des données), la migration vers une API souveraine comme EnvoiSMS devient stratégique.
La transition entre deux API REST est rapide, mais requiert une attention particulière sur le formatage des données. Voici la checklist technique de migration.

1. Mappez vos paramètres API (Le dictionnaire de traduction)

L'API de Vonage et l'API EnvoiSMS utilisent des conventions de nommage différentes dans leurs payloads JSON. Voici l'équivalence stricte à implémenter dans votre code :

Paramètre Vonage (Nexmo)Équivalent EnvoiSMSType de donnée
api_key / api_secretAuthorization: Bearer <Token>Header HTTP (Sécurité renforcée)
fromsender_idString (Max 11 caractères alphanumériques)
torecipientString (Format E.164 : +2126XXXXXX)
textmessageString (Supporte GSM-7 et Unicode)
type="unicode"(Automatique)EnvoiSMS détecte l'UTF-8 nativement

Note sur l'authentification : Nexmo accepte souvent l'API Key dans l'URL (GET) ou le Body (POST). Pour des raisons de standard de sécurité moderne, EnvoiSMS exige le passage du token dans le Header HTTP d'autorisation.

2. Gérez vos Sender ID (Le piège classique)

Sur Nexmo, pour envoyer un SMS en France ou au Royaume-Uni, vous pouvez souvent inventer le champ from à la volée dans votre code.
Au Maroc, le marché est régulé (Sender ID Whitelisting).

Avant de modifier votre code : Vous devez demander au support EnvoiSMS de valider et enregistrer officiellement votre "Nom d'expéditeur" auprès des opérateurs marocains (IAM, inwi, Orange). Cette validation prend 15 à 30 jours : prévoyez-la au moins 30 jours avant la bascule. Si vous omettez cette étape, vos SMS génèreront une erreur 403 Forbidden ou seront bloqués par les filtres télécoms locaux.

3. Adaptez la gestion des Webhooks (DLR - Accusés de réception)

Si vous utilisez les Delivery Receipts (DLR) de Vonage pour mettre à jour le statut de vos envois dans votre CRM (ex: marquer un code OTP comme reçu), le format de retour (Callback) va changer.

Vonage envoie souvent un paramètre status (ex: delivered, failed).
Avec EnvoiSMS, configurez l'URL de votre Webhook dans le tableau de bord. Votre serveur (Endpoint) recevra un payload JSON standardisé :

json
{
  "message_id": "msg_8f7d6c5b",
  "status": "DELIVERED",
  "recipient": "+212600000000",
  "timestamp": "2026-10-15T14:32:01Z"
}

Assurez-vous de modifier le contrôleur de votre application (Express.js, Laravel, Spring) pour parser ces nouvelles clés JSON.

4. La Période de Transition (Le "Shadow Testing")

Ne coupez pas Nexmo du jour au lendemain. Appliquez le principe de la bascule sécurisée :

  1. Semaine 1 (Test en double) : Branchez EnvoiSMS uniquement sur vos environnements de Staging / Pré-production.
  2. Semaine 2 (Bascule Transactionnelle) : Passez 100% de vos SMS Marketing (Push promotionnel) sur EnvoiSMS, car ils sont moins critiques à la seconde près.
  3. Semaine 3 (Bascule OTP) : Si les campagnes marketing fonctionnent parfaitement avec un bon taux de DELIVERED, basculez vos flux critiques (Mots de passe oubliés, alertes serveurs).

En migrant vers un acteur local, vous ne changez pas seulement quelques lignes de code JSON : vous passez sur des routes locales vers les opérateurs marocains, avec bascule automatique entre routes, ce qui peut réduire la latence de livraison sur les téléphones marocains.

Questions fréquentes

Comment suivre l'acheminement sur les réseaux IAM, Inwi et Orange ?

Nos routes locales vers Maroc Telecom (IAM), Orange et inwi, avec bascule automatique entre routes, renvoient un statut de livraison opérateur pour chaque message, par webhook. Le délai de remise dépend de l'opérateur et du réseau du destinataire.

Comment la plateforme gère-t-elle le format des numéros marocains ?

EnvoiSMS normalise automatiquement les numéros saisis (06..., 07..., 00212...) vers le standard E.164 (+212) pour éviter tout échec de distribution.