Payment infrastructure built for modern businesses.
ScanPay is, and remains, a payment gateway. Connect it to your website, your application or the systems your team already works in, and every payment lands with a reference, a status and a record.
From checkout to confirmation.
Six stages, one transaction reference running through all of them.
What the gateway gives your operation.
One place to collect
Website, application and business-system payments arrive through the same gateway.
A reference per transaction
Every payment carries a reference your finance team can trace and reconcile.
Status you can act on
Verified, pending, processing and failed are explicit states, not guesses.
Verification included
The same verification that powers the rest of the platform applies to gateway payments.
Systems stay in sync
Webhooks push transaction changes to your systems as they happen.
Operational visibility
The dashboard shows what came in, what is pending and what failed.
// Create a payment against an order
const payment = await scanpay.payments.create({
amount: 4500,
reference: "ORDER-4821",
method: "mpesa",
callback: "https://yourapp.co/webhooks/scanpay"
});
// React when the status settles
scanpay.webhooks.on("transaction.verified", (e) => {
orders.markPaid(e.reference, e.amount);
});
Connect it the way your stack works.
Call the API from your server, listen for webhooks, or run both. The transaction reference is the thread that ties your records to ScanPay's.
- REST API for initiating and querying payments
- Webhooks for transaction status changes
- Works alongside ISP and utility billing on the same account
Know what came in, and what did not.
| Reference | Amount | Method | Channel | Time | Status |
|---|---|---|---|---|---|
| SPV-8F2A41C9 | KES 24,500.00 | M-Pesa | Website checkout | 14:32 | Verified |
| SPV-7B1D09A4 | KES 3,500.00 | M-Pesa | Mobile app | 14:26 | Verified |
| SPV-5A66C118 | KES 9,000.00 | M-Pesa | POS | 13:58 | Pending |
| SPV-9D02B85F | KES 1,180.00 | M-Pesa | Website checkout | 13:22 | Failed |
Payment gateway FAQs.
Connect ScanPay to your website, application or business system. Payments are collected through the gateway, each one gets a transaction reference and status, and your system is notified when the payment is confirmed.
Yes. ScanPay exposes a REST API and webhooks, so it can be connected to a website, a mobile application, an ERP, a POS, or an internal business system.
M-Pesa is supported through the ScanPay STK Push integration. Talk to the ScanPay team to confirm which methods apply to your setup.
Each transaction carries a status. Your system can query it through the API or receive it through a webhook the moment it changes, and the dashboard shows the same information.
Transactions processed through the ScanPay M-Pesa integration carry a 1% transaction fee. Pricing for other gateway configurations depends on your setup — contact ScanPay for a quote.
Continue exploring
Related ScanPay services that connect to this one.
Start accepting payments.
Connect ScanPay to your website, application or business system and start collecting with a record behind every transaction.