Traitement des numéros de téléphone
Vous pouvez écrire un numéro de téléphone presque comme vous le souhaitez — avec des espaces, des tirets, des parenthèses, avec +, avec 00 ou sans aucun indicatif. Mais avant qu'un message parte, il doit être clair vers quel réseau mobile il mène. C'est pourquoi le portail est tolérant lors de la saisie d'un numéro et strict lors de l'envoi : tout ce que nous ne pouvons pas associer à un opérateur précis ne part jamais.
Comment nous lisons un numéro
Chaque numéro subit le même traitement lors de la saisie :
- Nous supprimons tout ce qui n'est pas un chiffre — espaces, tirets, points, parenthèses et le signe
+. - Nous retirons un
00initial — pour nous, la forme internationale00420…équivaut à+420….
L'écriture ne fait donc aucune différence — ces quatre variantes aboutissent toutes à un seul et même numéro :
| ce que vous saisissez | résultat |
|---|---|
+420 777 888 555 |
420777888555 |
00420777888555 |
420777888555 |
(420) 777-888-555 |
420777888555 |
420.777.888.555 |
420777888555 |
Le signe + est supprimé comme tout autre caractère qui n'est pas un chiffre. Peu importe donc que vous écriviez le numéro avec +420, 00420 ou simplement 420.
Numéros locaux et indicatif du pays
Un numéro local — par exemple 777 888 555 — n'indique pas à quel pays il appartient. Nous cherchons donc pas à pas le pays dont l'indicatif doit être ajouté :
- Le numéro comporte déjà un indicatif international — nous le laissons tel quel.
- Le pays du contact — si un pays est attribué au contact concerné, nous l'utilisons.
- Le pays indiqué lors de l'envoi — sinon, nous prenons le pays que vous avez sélectionné dans le formulaire ou transmis dans l'API.
- Le pays de votre compte — si aucun pays n'y est indiqué non plus, nous utilisons le pays défini sur votre compte BulkGate. Vous envoyez très probablement des messages dans votre propre pays.
En fonction du pays trouvé, nous ajoutons l'indicatif et supprimons un éventuel zéro initial :
| ce que vous saisissez | pays trouvé | résultat |
|---|---|---|
777 888 555 |
Tchéquie | 420777888555 |
0777 888 555 |
Tchéquie | 420777888555 |
+48 600 700 800 |
Tchéquie | 48600700800 — son propre indicatif est conservé |
Les numéros qui comportent déjà un indicatif international restent intacts. Il n'est donc pas nécessaire de nettoyer au préalable un fichier qui mélange numéros locaux et internationaux. L'endroit où le pays se sélectionne et la manière de saisir des contacts de plusieurs pays à la fois sont décrits dans Attribuer un pays aux contacts.
Si vous envoyez des messages dans un autre pays que celui de votre compte, ne vous fiez pas à la dernière étape. Un numéro local recevrait l'indicatif de votre pays et deviendrait invalide. Sélectionnez donc le pays sur le contact ou lors de l'envoi, ou écrivez les numéros au format international dès le départ.
Certains pays ont un préfixe national plus long qu'un simple zéro, ou n'en ont pas du tout. Nous appliquons pour eux des règles distinctes, si bien que l'écriture locale y fonctionne aussi — la réécrire au format international reste toutefois l'option la plus sûre.
Validation du numéro et correspondance avec le réseau
Pour qu'un message parte, il ne suffit pas que le numéro ressemble à un numéro. Nous devons l'associer à un réseau mobile précis. C'est pourquoi nous validons toujours le numéro dans son ensemble :
- Nous ajoutons l'indicatif international s'il manque — comme décrit dans Numéros locaux et indicatif du pays.
- Nous trouvons le préfixe du réseau — à partir des chiffres qui suivent l'indicatif international, nous déterminons à quel réseau mobile le numéro appartient.
- Nous vérifions la longueur — le reste du numéro doit avoir la longueur attribuée à ce préfixe de réseau.
Seul le réseau trouvé détermine la route empruntée par le message et son prix.
Un numéro non reconnu est marqué Numéro invalide et ne va pas plus loin :
- Aucun message n'est créé. Vous ne le trouverez pas non plus dans l'historique — voir Le message n'a pas été livré.
- Rien n'est facturé. Ces numéros ne comptent ni dans le récapitulatif de la campagne ni dans le calcul du prix.
- La campagne continue. Les autres destinataires reçoivent leurs messages normalement, et vous pouvez suivre le nombre de numéros invalides pendant l'envoi.
Un numéro reconnu ne garantit pas encore que le message partira. Il peut être bloqué par la blacklist ou la désinscription (opt-out), ainsi que par le paramètre Définir les restrictions de votre compte, qui contient la liste des pays vers lesquels vous êtes autorisé à envoyer des messages.
Numéros portés chez un autre opérateur
Un numéro que le destinataire a porté chez un autre opérateur conserve son préfixe de réseau d'origine. Lors de la validation, nous l'associons donc d'abord à l'opérateur d'origine. Au moment de l'envoi, nous utilisons ensuite le registre HLR pour savoir dans quel réseau le numéro se trouve réellement, et nous facturons le message au prix de cet opérateur.
Où le contrôle a lieu
| où | ce que cela signifie |
|---|---|
| Import dans le carnet d'adresses | seuls les contacts dont le numéro est reconnu sont enregistrés, les autres lignes sont ignorées ; le numéro est enregistré au format international avec son pays, son indicatif et son réseau |
| Import dans une campagne | le même contrôle que dans le carnet d'adresses — que vous ajoutiez les numéros depuis un fichier, depuis une vCard ou manuellement |
| Message de test | le numéro doit passer le contrôle, sinon le test n'est pas envoyé |
| Blacklist | seul un numéro reconnu peut y être ajouté |
| API et modules | les numéros passent par le même contrôle que dans le portail |
Comment vérifier les numéros à l'avance
Pour en être sûr avant un envoi, transmettez les numéros à la vérification des numéros de téléphone. Pour chaque numéro, vous obtenez en retour s'il est valide, à quel pays il appartient, son indicatif et le réseau dans lequel il se trouve. Un numéro non reconnu est renvoyé avec valid: false et le réseau unknown.
Depuis PHP, vous pouvez appeler la même vérification via le NumberChecker de notre SDK.
La vérification est gratuite et convient bien au nettoyage régulier de votre base de contacts : traitez les numéros signalés comme unknown avant qu'une campagne n'en dépende.
Quand un numéro est valide mais inconnu chez nous
Les plans de numérotation évoluent : les opérateurs obtiennent de nouvelles plages et de nouveaux réseaux virtuels apparaissent. Un numéro fonctionnel peut donc être marqué Numéro invalide chez nous — c'est alors un cas pour le support. Nous ajouterons la plage à notre base de données des réseaux et le numéro commencera à passer.
- Dans le menu du portail, cliquez sur
Supportpuis surContactez-nous - Dans le champ
Sujet, choisissezContactez le support - Sélectionnez le
Paysauquel appartient le numéro - Dans le second champ
Sujet, indiquez l'objet du signalement — par exempleNuméro de téléphone non reconnu - Dans
Description du problème, indiquez le numéro complet au format international, l'opérateur si vous le connaissez, et l'endroit où vous avez rencontré le problème - Cliquez sur
Envoyer
Un échantillon aide aussi : si toute une plage de numéros se comporte de la même façon, envoyez-en plusieurs. À partir d'un seul numéro, nous ne pouvons pas savoir s'il s'agit d'une faute de frappe ou d'une plage qui nous manque.
Si vous n'êtes pas connecté au portail, utilisez le formulaire de contact — choisissez le même Sujet et ajoutez l'Email sous lequel votre compte est enregistré.
Merci pour votre retour.