Mobile wallet
Verify M-Pesa Ethiopia Transactions
M-Pesa Ethiopia is Safaricom's mobile money service operating in Ethiopia. M-Pesa receipts are available via a public JSON API that returns structured transaction data. The endpoint is geo-blocked to Ethiopian IP addresses, similar to Telebirr.
Required information
- Transaction reference (required), e.g. SE12345678
Reference number format
Alphanumeric reference (typically 2 letters followed by 6+ digits)
Example: SE12345678
How to verify M-Pesa with cheki
- Get the transaction reference from the customer's M-Pesa SMS or receipt
- cheki calls M-Pesa's public JSON API and extracts payment data
- If the server can't reach M-Pesa (geo-block), cheki provides a direct receipt URL
How M-Pesa receipt verification works
The M-Pesa receipt endpoint is: https://m-pesabusiness.safaricom.et/api/receipt/getReceipt?trxNo={REFERENCE}
This is a public URL that returns a JSON response containing the official transaction data. No authentication is required.
Note: This endpoint is geo-blocked to Ethiopian IP addresses. If cheki's server cannot reach it, use the fallback URL or self-host on an Ethiopian network.
Who uses M-Pesa verification
- Shops confirming M-Pesa payments
- Online stores verifying M-Pesa transactions
- Businesses reconciling M-Pesa deposits
- Developers integrating M-Pesa verification via API
Verifying M-Pesa via API
cheki provides a free REST API for M-Pesa verification:
POST https://chekiapp.vercel.app/api/verify
Request body: { "bank": "mpesa", "reference": "SE12345678" }
See the API documentation for full details.