Aller au contenu principal

Accepter des paiements

Info
Info

Pour accepter un paiement, il faut préparer les informations de paiement et ensuite envoyer une requête de paiement à l'aide de notre API, de notre bibliothèque Nodejs, du widget JS ou de nos SDKs.

Chaque transaction comprend une référence qui peut être utilisée pour vérifier le paiement.

Environnement de test & de production

Nous ne saurions trop insister là-dessus : veuillez tester nos APIs par rapport à notre environnement sandbox avant de les diriger vers la production. Nous préférons éviter les interruptions de service en production causées par du code non testé.

L'URL de base est la même que ce soit en production ou en test. Seul votre API key distingue les deux environnements.


Url de requête

https://apis.chipdeals.me/momo/requestpayment?apikey=<YOUR_API_KEY>

Initier un paiement avec l'API

Pour initier un paiement, vous devrez transmettre des informations telles que le numéro mobile money, les nom, le montant, etc.

Le numéro, le montant, la devise et les noms et prénoms sont obligatoires. Vous pouvez également transmettre un autre paramètre qui est l'URL à contacter lorsque la transaction change d'état.

Voici la liste complète des paramètres que vous pouvez passer pour accepter un paiement


ParamètreRequis?Description
senderPhoneNumberOuiNuméro mobile money du client
Il dois respecter le format E.164 sans le signe +.
Format: [country code][local phone number]
Ex: 22951010588
senderFirstNameOuiPrénom du client
senderLastNameOuiNom de famille du client
amountOuiMontant à récupérer chez le client
currencyOuiDevise Voir les devises supportées
webhookUrlNonURL que nous allons contacter pour vous notifier des mises à jour par rapport au paiement initié.

POST https://apis.chipdeals.me/momo/requestpayment?apikey=test_FOdigzgSopV8GZggZa89 HTTP/1.1content-type: application/json{  "senderFirstName": "Iyam",  "senderLastName": "EVERICH",  "senderPhoneNumber": "22951010588",  "amount": 250,  "currency": "XOF"}

Initier un paiement avec le widget Javascript

Info
Info

Le widget de paiement permet d'accepter le paiement depuis son site web sans écrire beaucoup de codes. Pour accepter un paiement depuis votre site web avec notre widget Javascript, renseignez votre clé API, incluez le script JS fournit par Chipdeals et ajoutez un bouton de paiement pour vous faire payer

Le widget Javascript Mobile Money de Chipdeals fournit un flow de paiement simple et pratique pour le Web. Il peut être intégré en 3 étapes faciles, ce qui en fait le moyen le plus simple de commencer à recevoir des paiements. Accédez à la démo du widget ici.

Intégrez le widget en 3 étapes

Intégrez en 3 étapes facile notre widget sur votre propre site web. Vous pouvez aussi directement voir une démo du résultat après intégration.

1. Obtenez votre clé API

Récupérez votre clé api depuis le dashboard. Nous allons utiliser une clé api test comme exemple ici.

Clé api: test_FOdigzgSopV8GZggZa89

2. Incluez le script Javascript

Ajoutez ce code dans l'entête de votre page HTML. N'oubliez pas de remplacer votre propre clé API.

<script
src="https://cdn.jsdelivr.net/gh/Chipdeals/mobile-money-api-Javascript@1.6.1/lib.min.js"
apiKey="test_FOdigzgSopV8GZggZa89"
successfulRedirection="https://chipdeals.me/mobile-money"
></script>

✓ L'attribut src est l'URL du script de la version de la bibliothèque Chipdeals que vous incluez

✓ L'attribut apiKey est votre apiKey obtenue après inscription chez nous
✓ L'attribut successRedirection est facultatif. Il contient une URL où vous souhaitez que vos utilisateurs soient redirigés après avoir payé

3. Ajoutez un bouton de paiement

Ajoutez ce bouton de paiement à votre code.

Le bouton doit contenir la classe chipdeals-button pour permettre à notre script de le trouver et d'ajouter un écouteur de clic.

<button class="chipdeals-button" amount="3000">Pay 3000 XOF</button>



Voilà, vous avez réussi !

Lorsque vous cliquez sur votre bouton, le widget de paiement Chipdeals apparaîtra et vous pouvez accepter des paiement avec simplicité.




Personaliser votre widget de paiement

La plupart des modifications que vous pouvez effectuer sont disponibles via des propriétés que vous pouvez ajouter à votre bouton ou simplement ignorer.

Propriétés de personnalisation :

PropriétésRequis?Signification
amountOuiLe montant que vous voulez que l'utilisateur paie
currencyNonLa devise du montant. La valeur par défaut est XOF
imgNonURL de l'image du produit
nameNonLe nom du produit
addFeeToUserNonSi vous ajoutez cet attribut à votre bouton, votre utilisateur supportera les frais. Ex : si les frais sont de 2% nous demanderons à l'utilisateur de payer 1020 XOF pour un montant de 1000 XOF



Quelques exemples de personnalisation


Personnaliser la devise


Personaliser l'image du produit


Personnaliser le nom du produit


Personnaliser le support des frais




Personalisation avancée du widget

Dans votre code javascript, vous pouvez ajouter des gestionnaires pour intercepter les événements de changement d'état de la transaction.


Événement de paiement réussi

Vous pouvez ajouter un code qui sera exécuté dès que l'utilisateur réussit son paiement. Pour le faire, il suffit d'écouter l'événement chipdealsPaymentSucceeded sur l'objet document.

Exemple d'écoute d'évenenent de paiement réussi
document.addEventListener("chipdealsPaymentSucceeded", (event) => {
console.log(event);
console.log(event.detail.description);
});

Événement de paiement échoué

Vous pouvez ajouter un code qui sera exécuté dès que l'utilisateur échoue son paiement. Pour le faire, il suffit d'écouter l'événement chipdealsPaymentFailed sur l'objet document.

Exemple d'écoute d'évenenent de paiement échoué
document.addEventListener("chipdealsPaymentFailed", (event) => {
console.log(event);
console.log(event.detail.description);
});

Événement de mise à jour de l'état du paiement

Vous pouvez ajouter un gestionnaire pour que votre code soit exécuté dès que l'état du paiement change. Vous devez écouter l'événement chipdealsPaymentUpdated sur l'objet document .

Exemple d'écoute d'un evenement de mise à jour de paiement
document.addEventListener("chipdealsPaymentUpdated", (event) => {
console.log(event);
console.log(event.detail.description);
});