
Merchants are typically stores selling products or services in a physical location or online.
Merchants can use the GSMA API specification to accept online payments from customers using Mobile Money as a payment method. As well as one-off payments, furthermore, there is the option to set up recurring payments.
The Merchant Payment Mobile Money APIs allow merchants to accept payments from mobile money customers. Supported payment mechanisms include:
Closed loop and open-loop merchant payments are supported by the Mobile Money API. Closed loop merchant payments occur where the payer and payee accounts reside with the same mobile money provider. Open loop payments occur where the payer and payee accounts reside with different mobile money providers. For further reading, please refer to the following:
All documentation can be found on the GSMA Mobile Money API Developer Portal.
| Audience | Usage | Role |
|---|---|---|
| Mobile Money Providers | To understand how to implement the Mobile Money API to receive payments from merchants. | API Provider |
| Merchants | To understand how to implement the Mobile Money API to accept mobile money payments. | API Consumer |
In this example, an asynchronous payment flow is used with a final callback. The merchant initiates the request and will be credited when the payer approves the request.
In this example, an asynchronous payment flow is used with a final callback that contains the reason for failure.
In this example, an asynchronous payment flow is used with the polling method. The client polls against the request state object to determine the outcome of the payment request.
In this example, an asynchronous payment flow is used with a final callback. The payer initiates the request and will be debited upon successful completion of the request.
In this example, an asynchronous payment flow is used with a final callback that contains the reason for failure.
In this example the /authorisationcodes API is used to obtain a pre-authorised payment code. This in turn is presented by the payer to the merchant who initiates the payment request. Both flows in the diagram result in a callback. This flow is primarily used for payment on delivery use cases.
Merchants can issue a refund to payers. In this diagram, the refund is not linked to the original transaction and hence the /transactions API is used. Where a refund needs to be linked to the original transaction, the /reversals API must be used to perform the refund.
In some failure scenarios, a merchant may need to reverse a transaction. This diagram illustrates a reversal with the final result communicated via the callback.
This diagram illustrates use of a cursor mechanism to retrieve all payments for a merchant via multiple requests.
The Heartbeat API is used for monitoring purposes and establishes whether the mobile money provider is in a state that enables a client to submit a request for processing.
This API can be used by the merchant to retrieve a link to the final representation of the resource for which it attempted to create. Use this API when a callback is not received from the mobile money provider.