token en retour. Ce token n’est pas stable : sa valeur dans le callback diffère de celle obtenue à la création. Si vous vous appuyez sur lui pour identifier vos transactions, vous perdrez le fil entre ce que vous avez initié et ce que vous avez confirmé.
La solution est simple : générez votre propre identifiant côté marchand, stockez-le avant d’appeler l’API, et passez-le dans le champ custom_data. LigdiCash vous le renverra intact dans le callback, et l’affichera dans votre dashboard.
Le problème : le token change entre création et callback
À la création d’une transaction, l’API retourne untoken :
La solution : injecter votre transaction_id dans custom_data
Le champcustom_data de chaque requête est un objet JSON dont vous définissez librement les clés. C’est ici que vous injectez votre identifiant :
transaction_id y apparaît sous cette forme :
keyof_customdata pour extraire votre valeur — ne vous fiez pas à la position dans le tableau, d’autres entrées peuvent être présentes.
Format du transaction_id
Vous êtes libre de choisir le format qui correspond à votre métier :Cycle de vie recommandé
1
Générez le transaction_id
Avant d’appeler l’API, générez votre identifiant unique côté serveur.
2
Persistez-le en base
Enregistrez-le en base de données avec le statut
pending avant d’appeler l’API. Si l’appel échoue, vous avez quand même la trace.3
Passez-le dans custom_data
Incluez-le dans le tableau
custom_data de votre requête de création.4
Stockez le token de création
Conservez également le
token retourné par l’API — il sera nécessaire pour appeler l’endpoint confirm lors de la re-vérification du callback.5
Retrouvez-le dans le callback
Quand LigdiCash vous notifie, extrayez votre
transaction_id depuis custom_data et mettez à jour le statut en base.Retrouver le transaction_id dans le callback
Le payload du callback contient un champcustom_data. Sa forme varie selon le flux (voir Parser custom_data), mais pour un payin il s’agit d’un tableau :
Visibilité dans le dashboard LigdiCash
Letransaction_id que vous injectez dans custom_data est affiché dans le dashboard LigdiCash, dans le tableau des transactions — aussi bien pour les payin que pour les payout. Cela vous permet de réconcilier visuellement vos transactions sans avoir à interroger votre propre base de données.
Exemple de requête complet
Pages associées
- Tokens et identifiants — différences entre
token,transaction_idetexternal_id - Sécuriser le callback — pourquoi re-vérifier avec le token stocké
- Parser custom_data — les 3 formes possibles de
custom_data
