Verify

Des OTP qui arrivent, du premier coup

Inscriptions, connexions, paiements : Verify génère le code, le livre par la route la plus rapide, gère l’expiration et les tentatives, et vous dit simplement s’il est valide.

Intégration2appels API

start, puis check. Aucun code à stocker.

Codes4 à 8chiffres

Longueur, validité et essais paramétrables.

Langues3ar · fr · en

Messages prêts à l’emploi, traduits.

Vérification0MAD

Seul le SMS envoyé est facturé.

Fonctionnalités

Tout le cycle de l’OTP, géré pour vous

Plus besoin de générer, stocker, expirer et comparer des codes vous-même.

Route de secours automatique

Si l’opérateur ne confirme pas la livraison à temps, le code repart aussitôt par une autre route. Votre utilisateur ne voit que le SMS qui arrive.

Protection contre le SMS pumping

Limites par numéro, par préfixe et par adresse IP : les rafales frauduleuses sont bloquées avant de vous coûter.

Expiration et relances gérées

Codes de 4 à 8 chiffres, durée de validité, nombre d’essais et délai entre deux renvois : tout est paramétrable.

Arabe, français, anglais

Des messages clairs et traduits, avec le nom de votre service et la durée de validité. Choisissez la langue à chaque appel.

Comparaison en temps constant

Le code est haché de notre côté et comparé en temps constant : rien à stocker, rien à fuiter dans vos journaux.

Mode test

Avec une clé de test, le code est renvoyé dans la réponse : vos tests de bout en bout tournent sans SMS ni frais.

Comment ça marche

Deux appels, et c’est vérifié

Vous déclenchez, nous livrons, vous vérifiez. Le reste se passe chez nous.

  1. Lancez la vérification

    Avec le numéro de l’utilisateur et la langue du message.

    POST /v1/verify/start
  2. Nous livrons le code

    Code généré, message prêt à l’emploi, route prioritaire et secours automatique.

    status: pending
  3. L’utilisateur saisit

    Dans votre appli ou votre site, avant l’expiration du code.

    482913
  4. Vérifiez la saisie

    Réponse valid: true ou false. Le code est ensuite invalidé.

    POST /v1/verify/check

Sécurité & fiabilité

Protégé contre la fraude, résistant aux pannes

Un OTP qui n’arrive pas, c’est une inscription perdue. Un OTP détourné, c’est une facture qui explose. Verify s’occupe des deux.

Anti-pumping

Chaque demande passe des contrôles avant l’envoi

Les seuils sont réglables depuis le tableau de bord. Une demande bloquée n’est pas envoyée, donc pas facturée.

Limite par numérocodes par numéro et par périodeok
Limite par préfixerafales vers une même plage de numérosok
Limite par adresse IP et pays autorisésMaroc seul par défautok
+212 6•• ••• 001 → 0099 demandes en 40 s depuis la même IPbloqué

Route de secours

Pas d’accusé de réception ? Le code repart

Verify surveille la livraison de chaque code. Si la confirmation tarde, le même code est renvoyé par une autre route : l’utilisateur ne fait rien, et vous non plus.

Code envoyé par la route principalesent
Aucune confirmation de l’opérateurattente
Renvoi automatique par la route de secoursfallback
Code livré, saisi par l’utilisateurapproved

Exemple illustratif : le délai avant secours dépend de votre configuration.

Messages

Dans la langue de vos utilisateurs

Des textes courts, clairs et conformes aux bonnes pratiques anti-hameçonnage : le code, le service, la durée, et la consigne de ne pas le partager.

Modèles prêts à l’emploi

Arabe, français ou anglais, au choix à chaque appel

Passez lang dans la requête. Un message en arabe est envoyé en Unicode et tient en un seul SMS de 70 caractères.

  • Le nom de votre service, grâce à votre Sender ID
  • La durée de validité, pour éviter les codes saisis trop tard
  • Format reconnu par la saisie automatique des codes sur iOS et Android
WalletMAfr · GSM-7 · 1 SMS
Votre code WalletMA : 482913. Valable 5 minutes. Ne le partagez avec personne.
WalletMAar · Unicode · 1 SMS
رمز التحقق الخاص بك هو 482913. صالح لمدة 5 دقائق. لا تشاركه مع أحد.
WalletMAen · GSM-7 · 1 SMS
Your WalletMA code is 482913. Valid for 5 minutes. Never share it with anyone.

Pour les développeurs

Intégré en un après-midi

Deux endpoints, les mêmes clés API et les mêmes SDK que pour vos autres SMS.

verify.sh
# 1. Envoyer un codecurl https://api.mysms.ma/v1/verify/start \  -H "Authorization: Bearer $MYSMS_KEY" \  -H "Content-Type: application/json" \  -d '{"to": "+212612345678", "sender": "WalletMA", "lang": "fr"}'# → {"id":"ver_3Kd8","status":"pending","expires_in":300}# 2. Vérifier la saisie de l’utilisateurcurl https://api.mysms.ma/v1/verify/check \  -H "Authorization: Bearer $MYSMS_KEY" \  -H "Content-Type: application/json" \  -d '{"id": "ver_3Kd8", "code": "482913"}'# → {"id":"ver_3Kd8","valid":true,"status":"approved"}
use MySms\Client;$sms = new Client(env('MYSMS_KEY'));// 1. Envoyer un code : généré, livré et expiré par nos soins$verification = $sms->verify->start([    'to' => '+212612345678',    'sender' => 'WalletMA',    'lang' => 'fr',]);// 2. Vérifier la saisie de l’utilisateur$result = $sms->verify->check($verification->id, $request->input('code'));// $result->valid === true
import MySms from '@mysms/node';const sms = new MySms(process.env.MYSMS_KEY);// 1. Envoyer un code : généré, livré et expiré par nos soinsconst { id } = await sms.verify.start({  to: '+212612345678',  sender: 'WalletMA',  lang: 'ar',});// 2. Vérifier la saisie de l’utilisateurconst { valid } = await sms.verify.check({ id, code: '482913' });
import osfrom mysms import Clientclient = Client(os.environ["MYSMS_KEY"])# 1. Envoyer un code : généré, livré et expiré par nos soinsverification = client.verify.start(    to="+212612345678",    sender="WalletMA",    lang="fr",)# 2. Vérifier la saisie de l’utilisateurresult = client.verify.check(verification.id, code="482913")# result.valid == True
  • Aucun code à stockerVous conservez seulement l’identifiant de la vérification.
  • Paramètres par appelLongueur, validité et langue, ou vos valeurs par défaut.
  • Événementsverification.approved et verification.expired sur votre webhook.

Cas d’usage

Partout où il faut prouver un numéro

Inscription, connexion, paiement, remise d’un colis : le même OTP, des usages très différents.

E-commerce

Moins de fausses commandes en paiement à la livraison

Vérifiez le numéro avant de valider une commande à régler à la livraison : moins de colis expédiés vers des numéros injoignables.

  • Vérification du numéro au checkout
  • Connexion sans mot de passe
  • Confirmation des commandes importantes
MyShopmaintenant
MyShop : votre code de confirmation de commande est 5308. Valable 10 minutes.
Livré · 1,1 s

Banque & fintech

Une authentification forte qui ne bloque pas vos clients

Double authentification, validation des virements et ajout de bénéficiaire : la route prioritaire et le secours automatique évitent les clients coincés devant leur écran.

  • Double authentification à la connexion
  • Validation d’un virement ou d’un bénéficiaire
  • Réinitialisation du mot de passe
WalletMAmaintenant
WalletMA : code 731044 pour valider le virement de 2 000,00 MAD vers K. A. Ne le communiquez à personne.
Livré · 0,9 s
WalletMAmaintenant
رمز التحقق الخاص بك هو 731044. لا تشاركه مع أحد.

Santé

Un accès sûr aux données des patients

Avant d’ouvrir un dossier, des résultats ou une téléconsultation, vérifiez que c’est bien le patient qui se connecte.

  • Connexion à l’espace patient
  • Accès aux résultats d’analyses
  • Consentement avant une téléconsultation
LaboCentralmaintenant
LaboCentral : votre code d’accès à vos résultats est 662190. Valable 5 minutes.
Livré · 1,3 s

Logistique

Une preuve de livraison sans signature

Le client reçoit un code et le donne au livreur à la remise du colis : la livraison est prouvée, sans papier ni litige.

  • Code de remise du colis
  • Retrait en point relais
  • Changement d’adresse sécurisé
ExpressMA13:52
ExpressMA : donnez le code 4417 au livreur à la remise de votre colis MA2049381.
Livré · 1,2 s

Éducation

Le bon parent sur le bon compte

Création de l’espace parents, inscription en ligne ou examen à distance : un code par SMS confirme l’identité sans application à installer.

  • Activation de l’espace parents
  • Inscription et paiement des frais
  • Accès à un examen en ligne
AlAmalmaintenant
Al Amal : votre code d’activation de l’espace parents est 290715. Valable 10 minutes.
Livré · 1,4 s

Tableau de bord

Combien de codes aboutissent, vraiment

Suivez le taux de conversion de vos codes, repérez les numéros qui n’aboutissent pas et les tentatives bloquées.

app.mysms.ma / verify Données d’exemple
Vérifications3 2047 derniers jours
Validées91%▲ 3 pts
Délai médian1,3sroute principale
Bloquées148non facturées

Entonnoir de vérification

Codes envoyés3 204
Livrés3 140
Saisis2 980
Validés2 916
Via secours128

Tentatives bloquées anti-pumping

OrigineRègleStatut
IP 41.•••.12.7par IPbloqué
+212 6•• ••• 00xpar préfixebloqué
+44 7•• •••• 319paysbloqué
+212 7•• ••• 552par numérolimité

Comparatif

Verify ou un OTP fait maison ?

Vous pouvez envoyer vos codes avec l’API Messages. Verify vous évite tout le reste.

VerifyOTP via l’API Messages
Génération et stockage du code Oui À développer
Expiration, essais et délai de renvoi Oui À développer
Route de secours automatique Oui Non
Protection contre le SMS pumping Oui À construire
Comparaison en temps constant Oui À votre charge
Messages traduits ar · fr · en Oui À rédiger
Prix Le SMS envoyé Le SMS envoyé

FAQ

Questions fréquentes

Combien coûte une vérification ?

Vous payez le SMS envoyé, au tarif transactionnel (de 0,66 à 0,40 MAD HT selon votre volume). La vérification du code est gratuite, et un renvoi compte comme un nouveau SMS.

Combien de temps un code reste-t-il valable ?

Cinq minutes par défaut. Vous pouvez choisir la durée de validité, la longueur du code (4 à 8 chiffres), le nombre d’essais autorisés et le délai minimum entre deux renvois.

Qu’est-ce que le SMS pumping ?

Une fraude où des robots déclenchent des milliers de codes vers des numéros contrôlés par l’attaquant, pour être rémunérés sur le trafic que vous payez. Verify limite les demandes par numéro, par préfixe et par adresse IP, et bloque les rafales suspectes avant l’envoi.

Puis-je utiliser mon propre Sender ID ?

Oui. Le code s’affiche sous le nom de votre marque une fois votre Sender ID enregistré, ou sous notre expéditeur partagé en attendant.

Et si l’utilisateur ne reçoit pas le code ?

Si l’opérateur ne confirme pas la livraison à temps, Verify renvoie le code par une route de secours, sans action de votre part. L’utilisateur peut aussi demander un renvoi, dans la limite que vous fixez.

Comment tester sans envoyer de vrais SMS ?

Avec une clé de test, aucun SMS n’est envoyé ni facturé : le code est renvoyé dans la réponse de l’API pour vos tests automatisés.

Plateforme

Les autres produits mysms

Un seul compte, un seul solde et une seule facture pour tous vos SMS.

Tarifs

Dès 0,40 MAD / SMS

Chaque code envoyé est facturé au tarif transactionnel, de 0,66 à 0,40 MAD HT selon votre volume. La vérification est gratuite, les demandes bloquées ne sont pas facturées.

Commencez à envoyer en 5 minutes

Créez un compte gratuit, recevez 100 messages de test et constatez la rapidité de la livraison locale. Sans carte bancaire.