Mobile money

En Afrique, l'argent est sur le téléphone. Hela parle aux opérateurs et aux agrégateurs pour demander un paiement sur le téléphone du client ou lui envoyer un lien vers une page de paiement mobile.

Partenaire Pays Mode Ce qu'il faut
MTN MoMo RDC, Ouganda, Rwanda, Cameroun, Côte d'Ivoire, Bénin, Ghana, Zambie… Demande sur le téléphone (Request to Pay) Un compte développeur MoMo (Collections) : clé d'abonnement, utilisateur API, clé API, environnement
M-Pesa Kenya, Tanzanie, RDC (Vodacom) Demande sur le téléphone (STK Push) Un compte Daraja : consumer key et secret, short code, pass key
Orange Money Côte d'Ivoire, Sénégal, Cameroun, Mali, Burkina, RDC… Lien de paiement (Web Payment) Identifiant et secret client, clé marchand, pays
Wave Sénégal, Côte d'Ivoire, Mali, Burkina, Ouganda Lien de paiement (Checkout) Clé API, secret de webhook
Flutterwave Nigeria, Ghana, Kenya, Ouganda, Rwanda, Tanzanie, Afrique francophone Lien de paiement — agrégateur : mobile money, cartes, virement Clé secrète, hash de webhook
Paystack Nigeria, Ghana, Kenya, Afrique du Sud, Côte d'Ivoire Lien de paiement — agrégateur Clé secrète
Airtel Money RDC, Ouganda, Kenya, Tanzanie, Zambie, Rwanda, Nigeria, Malawi, Gabon, Congo, Tchad, Niger, Madagascar, Seychelles Demande sur le téléphone (Merchant Payments) Un compte développeur Airtel Africa : client id et secret, pays

Connecter

Intégrations → le partenaire → Connecter. Renseignez les identifiants fournis par l'opérateur et le portefeuille Hela à créditer (en général un portefeuille de type mobile money au nom de l'opérateur). Cochez bac à sable pour essayer avec les environnements de test des opérateurs.

Pour les partenaires qui notifient par webhook (Orange Money, Wave, Flutterwave, Paystack), copiez l'adresse de notification de Hela dans leur console. MTN et M-Pesa rappellent l'adresse donnée à chaque demande ; rien à configurer.

Utiliser

Demander sur le téléphone (MTN MoMo, M-Pesa, Airtel Money) : sur une facture, saisissez le numéro du client (pré-rempli depuis sa fiche). Le client reçoit une demande à valider par son code PIN. À la validation, Hela enregistre le paiement et la facture passe payée ; en cas de refus ou de délai, l'état passe échoué.

Lien de paiement (Orange Money, Wave, Flutterwave, Paystack) : Hela crée la page de paiement au montant exact et donne l'adresse à envoyer — WhatsApp, SMS, QR.

Par l'API :

POST /companies/{id}/integrations/documents/sale/{saleId}/push-to-phone
{ "provider": "mpesa", "phone": "+254712345678" }

POST /companies/{id}/integrations/documents/sale/{saleId}/payment-link
{ "provider": "wave" }

À la caisse

Le mode En ligne du point de vente demande le numéro du client et pousse la demande de paiement sur son téléphone, sans quitter l'écran de vente. La vente attend ; la confirmation de l'opérateur l'encaisse dans le portefeuille désigné.

Réglages notables

Partenaire Réglage Sens
MTN MoMo Environnement mtncongo, mtnuganda, mtnrwanda, mtncameroon, mtnivorycoast, mtnbenin, mtnghana, mtnzambia… (sandbox en bac à sable)
Orange Money Pays ci, sn, cm, ml, bf, cd — l'adresse de l'API en dépend
Airtel Money Pays CD, UG, KE, TZ, ZM, RW… — envoyé dans l'en-tête X-Country ; bac à sable UAT disponible
Tous Portefeuille Le portefeuille crédité

Bon à savoir

  • Les montants sont envoyés dans la devise du document ; l'opérateur refuse une devise qu'il ne sert pas (une facture en USD chez M-Pesa Kenya).
  • Les frais de l'opérateur ne sont pas déduits du paiement enregistré.
  • Chaque demande ou lien garde la référence de l'opérateur ; le journal de la connexion montre l'aller-retour complet.
  • Hela vérifie les notifications : signature HMAC quand l'opérateur en fournit une, relecture de la transaction chez l'opérateur sinon. Une notification qui ne correspond à rien est ignorée et journalisée.

فقرة خاطئة أو ناقصة؟ راسلنا.