See what’s new at our product, check the updates below
MoMo Open API Maintenance Notification The MoMo Team will be conducting maintenance work on the Open API services, which will result in a decrease in service quality. The scheduled maintenance activities are as follows: Activity 1: Maintenance Start: June 27, 00:00 UTC+3 Maintenance End: June 27, 06:00 UTC+3 Please be advised that while the scheduled maintenance window is initially set for 6 hours, the actual timeframe may be shorter. We apologize for any inconvenience and appreciate your understanding and cooperation during this time. Thank You. MoMo API Team.
MoMo Open API Maintenance Notification The MoMo Team will be conducting maintenance work on the Open API services, which will result in a decrease in service quality. The scheduled maintenance activities are as follows: Activity 1: Maintenance Start: May 11, 00:00 UTC+3 Maintenance End: May 11, 06:00 UTC+3 Activity 2: Maintenance Start: May 14, 00:00 UTC+3 Maintenance End: May 14, 06:00 UTC+3 Please be advised that while the scheduled maintenance window is initially set for 6 hours, the actual timeframe may be shorter, possibly 1 hour. We apologize for any inconvenience and appreciate your understanding and cooperation during this time. Thank You. MoMo API Team.
Part of our ongoing efforts to improve MoMo Open API experience, we have updated the reason field for some FAILED responses on the Get Status API with insightful descriptions as illustrated below. {"externalId": "c1f4687688585858a173f12", "amount": "500", "currency": "UGX", "payer": { "partyIdType": "MSISDN", "partyId": "25677000000" }, "payerMessage": "Debit RequesttoPay", "payeeNote": "Debit RequesttoPay", "status": "FAILED", "reason": "NOT_ENOUGH_FUNDS"} Use Case Product Actual Reason Insufficient Funds Collections NOT_ENOUGH_FUNDS Insufficient Funds Disbursements NOT_ENOUGH_FUNDS Transaction Time out due to not inputting the PIN Collections COULD_NOT_PERFORM_TRANSACTION Invalid Payer Number Collections PAYER_NOT_FOUND Invalid Payee Number Disbursements PAYEE_NOT_FOUND Transaction Limit Exceeded for Payer Collections PAYER_LIMIT_REACHED Transaction Limit Exceeded for Receiver Disbursements NOT_ENOUGH_FUNDS Blocked Payer Account Collections SENDER_ACCOUNT_NOT_ACTIVE Blocked Payee Account Disbursements PAYEE_NOT_ALLOWED_TO_RECEIVE Blocked Partner Account Collections NOT_ALLOWED Blocked Partner Account Disbursements NOT_ALLOWED
When querying for the status of a financial transaction, the result can either be SUCCESSFUL, FAILED, or PENDING. A successful outcome means the MoMo subscriber has authenticated the transaction with the correct PIN, whereas a pending status means the MoMo subscriber is yet to approve the transaction with their PIN.Although the labels 'successful' and 'pending' are self-explanatory, a failed response could be due to a variety of factors, such as the customer entering an incorrect PIN or their wallet lacking sufficient funds to finalize the transaction.Developers have experienced difficulty understanding some of these error messages, particularly the INTERNAL_PROCESSING_ERROR which is a generic encompassing numerous errors with the most prevalent being a lack of sufficient funds in the MoMo subscriber's wallet.To address this issue, our team has devised a revised error response procedure that will provide specific reasons for failure, such as insufficient funds.This revision process is ongoing and developers who are part of our community platform will receive regular updates on these errors as they are implemented.Please note that while HTTP Codes remain unchanged, reasons for failure will be included in the response body by the team.Generic { "externalId": "04822b2a-0896-4612-9e9e-15ce749b7883", "amount": "500000000", "currency": "UGX", "payer": { "partyIdType": "MSISDN", "partyId": "25677000000" }, "payerMessage": "test", "payeeNote": "test", "status": "FAILED", "reason": "INTERNAL_PROCESSING_ERROR"}From the Snipped, the Reason field will be updated only.
MoMo API SDKs offer a streamlined approach for developers using Java, PHP, Android, JavaScript, Node.js to seamlessly integrate with MoMo Open APIs. They can create either client or server applications capable of interacting with MoMo APIs. Every language SDK support API use cases such as Transfer Disbursements, Transfer Remittance Transfers, Debit Collections, Agent Services (inclusive of Cash-In and Cash-Out), Refund, validations.Each language SDK is equipped with all the necessary libraries, reference materials, code examples, and tools that developers need for the construction of their solutions. Step 1:Before using the SDks Obtain the Subscription key with the below steps Sign up https://momodeveloper.mtn.com Navigate to the products page https://momodeveloper.mtn.com/products Select drop down on product that suits the business case and subscribe Once Done, Subscription Keys are found via https://momodeveloper.mtn.com/developer Using the primary Keys update the SDK Configuration with the Keys. Step 2: Find the SDK requirements and download links via Github below. NOTE: Sandbox Provisioning Use case is a Onetime process generating API User and API Key for the sandbox. Ask the Community, if faced with challenges SDK Details Java SDKRequirements Java JDK-1.8 or higher Apache Maven 3 or higherGit Hub MTN-Group/MoMoAPIs_Java_sdk (github.com) Java Script SDKRequirements Any BrowserGit Hub MTN-Group/MoMoAPIs_Javascript_sdk (github.com) PHP SDKRequirements PHP 5.4+ cURL PHP Extension JSON PHP ExtensionGit Hub MTN-Group/MoMoAPIs_Php_sdk (github.com) Node.Js SDKRequirements Node.js 16.19.1 LTS or higherGit Hub MTN-Group/MoMoAPIs_Nodejs_sdk (github.com) Android SDKRequirements Android Studio 4.0 or newer Android Platform Version: API 32 Build gradle: 7.3.0 Git Hub MTN-Group/MoMoAPIs_Android_sdk (github.com)
Send Customized Notifications to Clients after a Successful Debit
Here is how you can Configure the Transfer API to make Business to Business Payments In the Transfer request Body , The PartIdType will be “ALIAS” and the partyId with be the Actual Code, Will use “000000” as below the Alias is the Marchart code Example a MoMo Pay Code { "amount": "<string>", "currency": "<string>", "externalId": "<string>", "payee": { "partyIdType": "ALIAS", "partyId": "00000000" }, "payerMessage": "<string>", "payeeNote": "<string>"}
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKSorry, our virus scanner detected that this file isn't safe to download.
OK