Mobile money transfer
Last updated: 2026-07-17
Mobile money transfer is an inbound-only payment method. Use it when the account catalog makes the method available for the selected market, then discover a transfer rail with the pay-in operator discovery operation.
It is separate from standard mobile money: the selected operator is a transfer
rail code, not the customer's wallet operator.
Hosted pay-in
- Call pay-in operator discovery with
paymentMethod=PAYMENT_METHOD_MOBILE_MONEY_TRANSFERand the selected request context. - Initialize the pay-in with the same market, payment method, and one returned
rail code in
mobileMoneyOperator. - Redirect the customer only when
paymentOrder.paymentUrlis returned. - Reconcile the payment after the hosted step through a verified webhook or a payment read.
Hosted initialization does not send mobileMoneyTransferDetails; the customer
completes the method-specific step on the hosted page.
Direct pay-in
- Discover the transfer rail as described above.
- Create the pay-in with
paymentMethod=PAYMENT_METHOD_MOBILE_MONEY_TRANSFERand exactly onemobileMoneyTransferDetailsblock. - Send the returned rail code as
mobileMoneyTransferDetails.operatorand the customer's wallet number asmobileMoneyTransferDetails.mobileNumber. - Render returned instructions in order. Use each instruction's
labelfor display,valueas the customer-facing value, andcopyableto decide whether to offer a copy action. - Show
displayMessageandexpiresAtwhen present, then reconcile the payment status independently of instruction display.
Do not combine mobile-money-transfer details with bank, standard mobile-money, or test detail blocks. Mobile money transfer is not available for payouts.