Accept payments

“I have paid” claims

Customers confirm with their MoMo Transaction ID.

A claim is the customer saying “I have paid” and giving the MoMo Transaction ID from their confirmation SMS. Claims make LokiPay work even when the customer forgets the reference or the network delivers your SMS late.

What happens#

SituationResult
The SMS with that Transaction ID already arrived and fits the paymentVERIFIED immediately.
The SMS hasn’t arrived yetCLAIM_SUBMITTED — verified automatically when it arrives.
No SMS within the claim timeout (default 6 h)REVIEW with reason CLAIM_SMS_NOT_RECEIVED.
The SMS doesn’t fit (amount, reference…)REVIEW with the reason.
The Transaction ID is already used or claimed by another paymentRejected with TRANSACTION_ALREADY_USED / TRANSACTION_ALREADY_CLAIMED.

Where customers claim#

  • On the hosted checkout and payment-link pages (I have paid).
  • In your own app, by calling POST /v1/intents/:id/claim from your backend.
  • Without a payment at all — bare claims — when your app lets customers “top up any amount”.
Transaction IDs are normalised (spaces, dots and dashes removed, upper-cased) before matching, so GM260112.1130.C05400 and GM2601121130C05400 are the same.