After your request, MTN sends an SMS to the customer with the transaction reference and the USSD code to dial to approve the payment. The customer dials this code on their phone — they reach a USSD menu asking them to confirm with their MoMo PIN. No extra input on the merchant side: the callback remains the source of truth.Example SMS received by the customer:
Vous avez reçu une demande de débit avec la référence 1692100357.Tapez *133# puis choisissez l'option retrait pour approuver.
The SMS arrives within seconds, but the customer may take several minutes to read it and dial the USSD. Keep the waiting state until the callback arrives.
{ "response_code": "00", "token": "eyJ0eXAiOiJKV1Qi...", "response_text": "Votre requête est en cours de traitement", "wiki": "https://client.ligdicash.com/wiki/createInvoice"}
Store the token immediately after creation. Use it to call confirm when the callback is received — never rely on the token in the callback payload.