Paytrack

M‑Pesa integration, made effortless for developers

Collect straight into your bank account, PayBill or Till. No Daraja app needed: send an STK push with one API call and get signed webhooks when customers pay. Track every payment and delivery from a single dashboard.

  • STK Push into your bank account, PayBill or Till
  • Signed webhooks with automatic retries and redelivery
  • Idempotent requests, so retries never double‑charge

Blazing fast

Event-driven pipeline with status polling as a fallback.

Webhooks

HMAC-signed events, ~16h of retries and one-click redelivery.

Secure

No Daraja credentials to manage; revocable API keys.

Clean API

REST + OpenAPI spec, idempotency keys and cursor pagination.

Charge with STK Push · full reference →
curl -X POST https://api.paytrack.pesagrid.co.ke/v1/payments \
  -H "Authorization: Bearer ptk_***" \
  -H "Idempotency-Key: order-123" \
  -H "Content-Type: application/json" \
  -d '{
    "channel_id": "chn_***",
    "amount": 250,
    "phone": "0712345678"
  }'
Check payment status
curl https://api.paytrack.pesagrid.co.ke/v1/payments/pay_*** \
  -H "Authorization: Bearer ptk_***"
Receive the outcome by webhook
POST https://your.app/hooks/paytrack
PayTrack-Event-Type: payment.succeeded
PayTrack-Signature: t=1760512345,v1=5f2b…

{ "id": "evt_***", "type": "payment.succeeded",
  "data": { "id": "pay_***", "status": "succeeded", "amount": 250,
            "mpesa_receipt_number": "TJK3XXXXXX", ... } }