N Norvion Solution
M-Pesa STK Push API

Collect M-Pesa payments into any till, paybill or bank account.

Link your Buy Goods till, paybill or bank account, get your API keys, and send STK push requests with one call. Every payment is tracked on your dashboard and pushed to your server in real time.

HMAC-signed webhooks Automatic retries Till, paybill & bank
STK push request
POST https://norvionsolution.com/v1/stkpush

{
  "account_id": "NRVJZ4D3TJZS8",
  "secret_key": "sk_••••••••",
  "phone": "0712345678",
  "amount": 1500,
  "reference": "INV-1001"
}

→ 200 OK
{
  "success": true,
  "data": {
    "transaction_request_id": "TRX260924LH9GZ2DQFR",
    "status": "pending"
  }
}

Works with any collection account

One API, three kinds of destinations. Mix and match across as many linked accounts as you need.

Buy Goods till

The customer enters their PIN and the money lands straight in your till - no account number to key in.

Paybill

Each linked paybill gets its own account reference, so every payment is traceable back to your system.

Bank account

Collect straight into a bank account via its paybill, using the account number as the reference.

Everything you need to get paid

One integration for every kind of M-Pesa collection account.

Tills, paybills and banks

Link as many accounts as you need. Payments go straight to the number you link.

Instant STK push

The customer gets the M-Pesa PIN prompt on their phone. No paybill numbers to type.

Real-time webhooks

Results are sent to your server as soon as Safaricom confirms, signed and retried automatically.

Status checks

Missed a callback? Check any payment with its transaction request ID at any time.

Dashboard and reports

See every transaction, filter by account, status or date, and export to CSV.

Secure by default

Per-account secret keys, signed webhooks and key rotation from the dashboard.

Payment rotation

Split incoming payments across several destinations automatically, weighted however you choose.

Full audit trail

Every login, key rotation and account change is logged, so you always know what happened and when.

Clear documentation

A single, readable reference for every endpoint - no SDK required to get started.

Integrate in minutes

One HTTP call, from whatever you're already building with.

curl -X POST https://norvionsolution.com/v1/stkpush \
  -H "Content-Type: application/json" \
  -d '{
    "account_id": "NRVJZ4D3TJZS8",
    "secret_key": "sk_YOUR_SECRET_KEY",
    "phone": "0712345678",
    "amount": 1500,
    "reference": "INV-1001"
  }'

Why not just share your paybill number?

A manual paybill works, but STK push removes the guesswork - for you and the customer.

Manual paybill

  • ✕ Customer types the paybill, account number and amount by hand
  • ✕ Typos land money on the wrong reference
  • ✕ You reconcile payments by checking your phone or bank SMS
  • ✕ No automatic way to tell your app a payment succeeded

STK push with Norvion

  • ✓ One API call sends the exact amount and reference straight to the prompt
  • ✓ The customer only ever enters their M-Pesa PIN
  • ✓ Every transaction is logged on your dashboard automatically
  • ✓ A signed webhook tells your app the moment it's paid

Built for how Kenyan businesses get paid

Whatever you're collecting money for, it's one integration.

Online shops

Trigger a push the moment an order is placed and release it once the webhook confirms payment.

Subscriptions & billing

Collect recurring dues without asking customers to remember a paybill number every time.

Schools & institutions

Fee payments land on the right account reference every time, with a record for the bursar.

Delivery & logistics

Charge for a delivery on handover and confirm it instantly through the webhook.

Service providers

Send a payment request from the dashboard for one-off jobs - no code required.

Platforms & marketplaces

Link a different destination per seller or branch, and split collections with rotation.

Security you can trust

Built so a payment result can't be faked and your keys can't leak by accident.

HMAC-signed webhooks

Every callback to your server is signed with your account's own secret, so you can verify it's genuine.

Independently confirmed

Payment results are checked directly against Safaricom before your dashboard or webhook ever calls them successful.

Key rotation

Roll your secret key or webhook secret any time from the dashboard - the old one stops working immediately.

Full activity log

Logins, key changes and payment destination changes are all recorded and reviewable.

How it works

From sign-up to your first payment in three steps.

1

Create an account

Register with your email and log in to your dashboard.

2

Link your till, paybill or bank

You get an account ID and secret key for each one you link.

3

Send STK pushes

Call /v1/stkpush from your app, or request payments from the dashboard.

Ready to start collecting?

Create a free account and link your first till, paybill or bank account.

Email us WhatsApp