NixPay powers payments for businesses, developers and digital platforms. One API. Multiple businesses. Direct merchant payments.
// Initiate an M-PESA payment $nixpay = new NixPay('np_test_sk_…'); $nixpay->payments->stkPush([ 'amount' => 500, 'phone' => '254712345678', 'reference' => 'INV-1042', ]); // → pending · NP-10021
A complete platform for accepting, verifying and reconciling mobile money payments — without building the plumbing yourself.
Register an application and generate sandbox credentials instantly. Live credentials follow merchant verification.
Trigger customer payment prompts directly through Safaricom Daraja, with request and result tracking built in.
Receive payment events with HMAC signatures, delivery logs and automatic retries with backoff.
Every payment is bound to an authorised merchant account. No shared shortcodes, no silent substitutions.
Track payment requests, results, callbacks and success rates from a single dashboard.
Hashed secrets shown once, scoped credentials, key rotation, revocation and full audit trails.
NixPay connects developers, merchants and Safaricom Daraja — keeping settlement direct to each merchant.
Clean REST endpoints, predictable errors and SDK-ready examples in PHP, JavaScript and Python.
Onboard businesses, configure their M-PESA shortcode and manage verification and authorisation.
Direct integration with Safaricom Daraja for payment prompts and result callbacks.
Encrypted merchant credentials, scoped API keys and signed webhook deliveries.
Start in sandbox for free. Pay per successful transaction in production.
Build and test without real money.
Live payments to verified merchants.
For platforms with many merchants.
Create a developer account, register an application and generate your first sandbox API key in minutes.