M-Pesa and crypto payment gateway for Kenya
Coinwaka Pay is a payment gateway that lets your website or app accept M-Pesa, crypto, card, and PayPal through one integration. Customers pay how they prefer, you settle to USDT or USDC in your Coinwaka wallet, and a signed webhook fires on every successful payment.
- One integration for M-Pesa, crypto, card, and PayPal
- Hosted checkout or your own custom flow
- Signed webhooks on every successful payment
- Settle to USDT or USDC, no held fiat balance
How the payment gateway works
- 1
Create a payment intent
Call the API to create a payment intent for an amount, or drop in a ready-made hosted checkout page.
- 2
Customer pays with M-Pesa or crypto
M-Pesa triggers an STK prompt the customer confirms with their PIN. Crypto, card, and PayPal each run through their own rail.
- 3
Receive a signed webhook
When the payment confirms, Coinwaka sends a signed webhook so your system can verify it and release the order automatically.
- 4
Settle to stablecoin
Funds land as USDT or USDC in your Coinwaka wallet. No fiat balance is ever custodied; hold, sell to KES, or withdraw.
A gateway built for Kenyan checkout
Payment intents and hosted checkout
Build your own flow with payment intents, or drop in a hosted checkout page in minutes.
M-Pesa STK prompts
Customers confirm M-Pesa payments with their own PIN, the way they already pay across Kenya.
Signed webhooks
Every successful payment fires a signed webhook you can verify, so you never release an order on an unconfirmed payment.
Stablecoin settlement
You receive USDT or USDC you can hold, sell to KES, or withdraw. No held fiat balance.
Local and international
M-Pesa and card for Kenya, PayPal for customers paying in USD, EUR, GBP, and more.
Receipts and a ledger
Every payment carries a permanent reference, and your dashboard reconciles method, amount, and settlement.
What it costs
Coinwaka Balance payments carry a small Coinwaka fee. M-Pesa, card, and PayPal payments include the provider fee and the conversion spread in the quoted rate. The checkout always shows what the customer pays and what you receive before anyone confirms.
View full feesIntegrate safely
- Verify the webhook signature before you treat a payment as complete.
- Only fulfil an order after the payment status is Paid. Confirmed crypto payments are irreversible.
- Keep your API keys secret and rotate them if they are ever exposed.
- Test in the free sandbox before you go live.
M-Pesa crypto gateway questions
What is a crypto payment gateway?
A payment gateway lets your site or app take payments and confirm them automatically. Coinwaka Pay accepts M-Pesa, crypto, card, and PayPal through one integration and settles to stablecoin.
Can I accept M-Pesa through the API?
Yes. The gateway triggers an M-Pesa STK prompt, the customer confirms with their PIN, and you get a signed webhook when it succeeds.
How do I know a payment succeeded?
Coinwaka sends a signed webhook on every successful payment. Verify the signature, then release the order. Always wait for Paid.
What currency do I receive?
You settle to USDT or USDC in your Coinwaka wallet. No fiat balance is custodied; you can hold, sell to KES, or withdraw.
Is there a sandbox?
Yes. Sandbox is free and instant, so you can integrate and test before verifying your business to go live.
What does it cost?
Coinwaka Balance payments carry a small Coinwaka fee. M-Pesa, card, and PayPal include the provider fee and the conversion spread in the quoted rate. The checkout shows what the customer pays and what you receive. See the fees page.
Is Coinwaka a licensed payment processor?
Coinwaka operates in a controlled beta and does not hold itself out as a licensed exchange. Some payment methods are processed securely by licensed payment partners. See the compliance status page.
Build with the Coinwaka Pay gateway
Read the developer docs, create a payment intent in the free sandbox, and accept M-Pesa and crypto from your first request.
Read the developer docs