Skip to main content
Le SDK JavaScript LigdiCash fonctionne en Node.js et dans les environnements TypeScript. Tous les appels réseau sont asynchrones (async/await). Les types TypeScript sont inclus dans le package.

Installation

Prérequis : Node.js. La dépendance cross-fetch est installée automatiquement.

Initialisation

Obtenez votre apiKey et votre authToken depuis le dashboard LigdiCash en créant un projet API.

Payin avec redirection

Le client est redirigé vers la page de paiement hébergée par LigdiCash. C’est le flux recommandé pour les boutiques en ligne.
TypeScript
Tous les appels réseau (payWithRedirection, payWithoutRedirection, send, getTransaction) retournent une Promise. Un await manquant provoque une comparaison silencieuse sur un objet Promise au lieu du résultat réel.
Ne jamais ouvrir paymentUrl dans une iframe — LigdiCash la bloque. Redirigez dans le même onglet, un nouvel onglet ou un popup. Sur mobile natif, utilisez une WebView.
Pattern popup anti-bloqueur : ouvrez window.open("about:blank") au clic utilisateur (avant le await), puis naviguez vers paymentUrl après réception de la réponse. Cela contourne les bloqueurs de popups navigateur.

Payin sans redirection

Le client paie directement depuis votre interface. Vous devez collecter son numéro de téléphone et, selon l’opérateur, son code OTP.
TypeScript
Le mode OTP varie selon l’opérateur. Par exemple, pour un opérateur en mode USSD, le client génère son OTP sur son téléphone avant que vous ne soumetttiez. Pour un opérateur en mode approbation (ex. Moov Africa), envoyez otp: "" — le client approuve directement sur son application. Consultez la page de l’opérateur concerné.

Payout

Envoyez de l’argent vers un client — remboursement, salaire, gain.

Vers le wallet LigdiCash du client

TypeScript

Directement vers le mobile money

TypeScript
type: "client" utilise POST /pay/v01/withdrawal/create (via wallet LigdiCash). type: "merchant" utilise POST /pay/v01/straight/payout (mobile money direct, plus lent). Voir Payout — Introduction.

Vérification de statut

Appelez getTransaction avec le token stocké à la création (pas le token du callback, qui est différent).
TypeScript
Champs disponibles sur transaction :
Ne livrez jamais une commande uniquement sur la base d’un callback entrant. Appelez toujours getTransaction avec le token stocké à la création pour confirmer le statut côté serveur LigdiCash. Voir Sécurisation du callback.

Types TypeScript

Le SDK exporte les types suivants pour vos signatures de fonction et vos interfaces :
TypeScript

Gestion des erreurs

TypeScript
Vérifiez aussi response.response_code après chaque appel : "00" indique un succès, "01" une erreur. En cas d’erreur, consultez response.wiki pour obtenir l’URL de détail des sous-codes.

Liens utiles