L'add-on Passerelle de paiement MTN MoMo accepte les paiements par argent mobile des utilisateurs MTN Mobile Money à travers l'Afrique — s'intégrant à l'API Collections de MTN MoMo pour créer des transactions « Request to Pay », permettant aux clients d'approuver les paiements directement depuis leur téléphone.
Fonctionnalités principales
- Request to Pay — Initiez des demandes de paiement que les clients approuvent via une invite USSD sur leur téléphone MTN. Aucune carte bancaire requise.
- Provisionnement sandbox — Génération en un clic des identifiants API sandbox (ID utilisateur API et clé API) directement depuis le panneau d'administration. Seule la clé d'abonnement est nécessaire pour démarrer.
- Polling en temps réel — Vérification automatique du statut de paiement avec barre de progression pendant que le client approuve sur son téléphone. Support des webhooks pour les environnements de production.
- Identifiants chiffrés — Tous les identifiants API (clé d'abonnement, ID utilisateur API, clé API) sont chiffrés au repos via la façade Crypt de Laravel. Jamais stockés en clair.
- Environnements par pays — Supporte l'Ouganda, le Ghana, le Cameroun, la Côte d'Ivoire, le Bénin, le Congo et le Libéria avec des environnements cibles et devises spécifiques par pays.
- Test de connexion — Le bouton Test Key effectue un appel API de diagnostic pour vérifier que la clé d'abonnement est valide avant l'enregistrement.
- Payables polymorphiques — Fonctionne avec tout modèle implémentant le contrat
Payable, pas limité aux commandes de la boutique. - Contrat de passerelle de paiement — Implémente le
PaymentGatewayInterfacede Larapen, s'intégrant de manière transparente au flux de paiement de la Boutique.
Panneau d'administration
| Section | Description |
|---|---|
| Paramètres | Configurer les identifiants API (clé d'abonnement, ID utilisateur API, clé API), l'environnement (sandbox/production), l'environnement cible, la devise et l'hôte de callback. Toutes les clés sensibles sont stockées chiffrées. |
Flux de paiement
- Le client sélectionne « MTN Mobile Money » lors du paiement et saisit son numéro de téléphone MoMo.
- La passerelle obtient un jeton Bearer OAuth2 de MTN et envoie une « Request to Pay ».
- Le client reçoit une invite USSD sur son téléphone MTN et saisit son code PIN pour approuver.
- Le frontend interroge le statut du paiement toutes les 5 secondes avec une barre de progression.
- En cas de succès, la commande est confirmée et marquée comme payée. En production, les webhooks fournissent une confirmation de secours fiable.
Environnements par pays
| Pays | Environnement cible | Devise |
|---|---|---|
| Ouganda | mtnuganda | UGX |
| Ghana | mtnghana | GHS |
| Cameroun | mtncameroon | XAF |
| Côte d'Ivoire | mtnivorycoast | XOF |
| Bénin | mtnbenin | XOF |
| Congo | mtncongo | XAF |
| Libéria | mtnliberia | LRD |
| Sandbox | sandbox | EUR |
Configuration
| Paramètre | Description |
|---|---|
| Clé d'abonnement | Ocp-Apim-Subscription-Key de la page Profil du portail développeur MTN MoMo. Stockée chiffrée. |
| ID utilisateur API | UUID v4 généré lors du provisionnement sandbox ou obtenu du portail partenaire MTN. Stocké chiffré. |
| Clé API | Générée à partir de l'utilisateur API. Stockée chiffrée. |
| Environnement | sandbox ou production. Détermine l'URL de base de l'API MTN utilisée. |
| Environnement cible | sandbox pour les tests, ou un code spécifique au pays pour la production (ex. mtnuganda). |
| Devise | Doit être EUR en sandbox. Spécifique au pays en production (voir tableau ci-dessus). |
| Hôte de callback | Votre domaine pour recevoir les callbacks webhook (production uniquement). HTTPS requis. |
Remboursements
L'API Collections de MTN MoMo ne fournit pas de point de terminaison de remboursement. Les remboursements doivent être traités manuellement via le portail partenaire MTN MoMo ou via l'API Disbursements séparée.
Dépendances
Requis : L'add-on E-Shop doit être installé et actif. L'add-on MoMo s'enregistre comme passerelle de paiement via le contrat PaymentGatewayInterface et est automatiquement découvert par le système de paiement de la boutique.
Guide de configuration
- Installez et activez d'abord l'add-on E-Shop.
- Installez et activez l'add-on MTN MoMo.
- Créez un compte sur momodeveloper.mtn.com et abonnez-vous au produit Collections.
- Allez dans MTN MoMo > Paramètres dans le panneau d'administration.
- Saisissez votre clé d'abonnement et utilisez le bouton Générer les identifiants API pour les tests sandbox.
- Pour la production, obtenez les identifiants du portail partenaire MTN MoMo et définissez l'environnement cible spécifique au pays.
- MTN MoMo apparaîtra comme option de paiement lors du passage en caisse.
Idéal pour
- Sites e-commerce ciblant les clients des marchés africains où MTN MoMo est largement utilisé.
- Entreprises au Cameroun, Ghana, Ouganda, Côte d'Ivoire, Bénin, Congo et Libéria.
- Marchés orientés mobile où les clients préfèrent l'argent mobile aux paiements par carte bancaire.
- Vendeurs de produits numériques atteignant les utilisateurs d'argent mobile à travers l'Afrique.