General information: -------------------- PesaPI is an open source API for commercial accounts. In other words you need to have an (paybill) commercial account in order to use this API. Once you have a commercial account, you can access the account though this API, using the digital certificate that Mpesa provides you. Current status: --------------- The current system should be considered as a proff-of-concept, or alpha version. The system works all the way to the local database - but there are still rough edges and things pending. In any case, before using it in any production setup - you should carefully test and validate that it actually performs as you expect. ************************ Developer information ************************ Design goal of the application. 1. As robust as humanly possible for a scrubber based API. Consering a scrubber based api is generally not very unreliabe, due to changes in the original output. 2. Simple to use api on which to build applications ontop.
PesaPI
PesaPI is an unofficial open source API for mobile money systems, released under the BSD(lite) license.
The system currently support:
Kenya: Mpesa paybill accounts
Kenya: Mpesa private accounts
Kenya: Yu private accounts (experimental)
Ghana: Airtel private accounts (experimental)
Rwanda: MNT private accounts (experimental)
The API supports both PUSH and PULL versions. The PHP version of the API is generally the most mature and recomended at this point - the system is build using Mysql and Curl. Please direct all questions to the public mailing-list "pesaPi" on Google-groups:
groups.google.com
Short example
For a short usage example please see:
youtube.com
Current status
The current system should be considered as beta version - at least one commercial solution is using it as its payment gateway. However it is not recomended that you deploy the system without having a developer available to support the setup.
Version 0.1.0 was recently released and is contains a major rework of the internal structures of PesaPi - be alert that things that worked previously may not be fully working yet - as detailed testing is ongoing.
Currently we are looking for people to provide copies of the SMS messages they are getting from various payment systems.
System design overview
Supports both push and pull notifications.
Does synchroization between local and server database.
Transaction data are available even when main server is down.
Super easy to utilize for integrators.
Fast response on historical data.
Keep the load on servers as low as possible.
Hopefully more reliable than other APIs.
API Overview
The PesaPi class contains several static methods, these methods are the main interface.
availableBalance(time) -- returns the balance at a given point in time
locateByReceipt(receipt) -- returns a payment or null for the given receipt number
locateByPhone(phone, from, until) -- returns an array of payments from a particular phone
l …