API version 2026-10-18
Build payments on TeePay
Accept mobile money, hosted checkout and Control Number payments, send payouts and get verified results from one API, built for East Africa.
POST /v1/collectionsMobile money push
curl https://api.teepay.me/v1/collections \ -H "Authorization: Bearer $TEEPAY_API_KEY" \ -H "Idempotency-Key: order-1001" \ -H "Content-Type: application/json" \ -d '{ "money": { "amount_minor": "500000", "currency": "TZS" }, "customer": { "country": "TZ", "phone": "+255712345678", "name": "Asha Juma", "email": "asha@example.com" }, "description": "Order 1001" }'Choose how you get paid
Mobile money pushSend a USSD prompt to the customer’s phone and confirm the payment from your server.Read guide Hosted checkoutCreate a TeePay checkout page with one request and redirect your customer to it.Read guide Control NumbersIssue Tanzanian bill and customer numbers and track every verified installment.Read guide PayoutsQuote and send money from your TeePay balance to mobile wallets and bank accounts.Read guide
How a TeePay payment works
Every payment follows the same rule: a request creates it, but only TeePay’s verified record confirms it. Never treat a redirect or a provider prompt as proof of payment.
Payment lifecycle- 01
Create
Your server calls TeePay with a secret key and an Idempotency-Key.
- 02
Customer pays
The customer approves a USSD prompt, pays on hosted checkout or pays a Control Number.
- 03
TeePay verifies
The payment is confirmed with the provider and posted to your ledger.
- 04
You fulfil
A signed webhook arrives, or you read the status. Only then deliver the order.