API v1
Pokea Mobile Money na toa pesa kwa namba ya simu kwa endpoint chache tu. Authentication ni Bearer token, response ni JSON.
Kila request lazima iwe na header ya Authorization yenye API key yako:
Authorization: Bearer mph_live_xxxxxxxxxxxxxxxx
Content-Type: application/jsonHifadhi keys server-side tu. Usiweke kwenye browser au mobile app.
/balancePata balance ya wallet yako (TZS).
Response
{
"status": "success",
"data": { "balance_tzs": 12450, "currency": "TZS" }
}/depositsAnzisha collection ya Mobile Money. USSD push itatumwa moja kwa moja kwa mteja.
Request body
{
"amount": 5000,
"method": "mobile",
"phone": "255712345678",
"reference": "ORDER-001",
"callback_url": "https://app.yako/webhook"
}Response
{
"status": "success",
"data": {
"id": "tx_01HZABC...",
"status": "pending",
"amount_tzs": 5000,
"reference": "ORDER-001"
}
}Status ya mwisho (completed au failed) itatumwa kwenye callback_url yako. Inawekwa kwenye wallet yako pale tu mteja anapokamilisha malipo.
/withdrawalsToa pesa kutoka kwenye wallet yako kwenda namba ya simu. Inafanyika kiotomatiki.
Request body
{
"amount": 5000,
"method": "mobile",
"recipient": "255712345678",
"reference": "PAYOUT-001"
}Response
{
"status": "success",
"data": {
"id": "tx_01HZDEF...",
"status": "pending",
"amount_tzs": 5000,
"fee_tzs": 200
}
}Ada ni 4% ya kiasi unachotoa. Wallet yako itakatwa kiasi + ada papo hapo. Withdrawal ikishindikana, pesa zinarudishwa kwenye wallet.
/transactionsPata orodha ya transactions zako za hivi karibuni (deposits + withdrawals).
Response
{
"status": "success",
"data": [
{
"id": "tx_01HZABC...",
"type": "deposit",
"amount_tzs": 5000,
"status": "completed",
"reference": "ORDER-001",
"created_at": "2026-06-04T10:00:00Z"
}
]
}Ukiweka callback_url kwenye request ya deposit, tutakupigia POST pale transaction inapokamilika au kushindwa:
{
"event": "transaction.completed",
"data": {
"id": "tx_01HZABC...",
"type": "deposit",
"amount_tzs": 5000,
"status": "completed",
"reference": "ORDER-001"
}
}Jibu na 200 OK ndani ya sekunde 5. Tukikosa, tutajaribu tena kwa exponential backoff.
{
"error": "insufficient_balance",
"message": "Wallet haina pesa za kutosha."
}401 — API key haipo au imebatilishwa402 — Wallet haina pesa za kutosha (withdrawal)422 — Validation error (field hazikamiliki)429 — Umezidi rate limit (60 req/min)https://mapesahapa.online/api/v1Una swali, tatizo la integration, au unahitaji higher rate limits? Tuandikie:
Tunajibu ndani ya saa 24. Tafadhali jumuisha request_id au tx_id kama unaripoti tatizo la transaction.