Skip to main content

Welcome to Fingo Pay

Build reliable payment experiences with a single API. Charge customers via STK Push, disburse funds to wallets, tills, paybills, and bank accounts, and reconcile everything with webhooks.
Base URL: https://api.fingopay.io

Quickstart

Get up and running in three steps.
1

Set your API key

Get your key from the Fingo Pay Dashboard and export it.
export FINGO_API_KEY=sk_test_***
2

Create a charge

Initiate an M-Pesa STK Push payment.
curl -X POST "https://api.fingopay.io/v1/mpesa/charge" \
  -H "Authorization: Bearer $FINGO_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 46ea80b4-5f6d-43b6-8d69-445d0f9cb33f" \
  -d '{
    "merchantTransactionId": "order_12345",
    "amount": 150000,
    "phoneNumber": "+254712345678",
    "narration": "Order #12345"
  }'
The customer receives an STK Push prompt. Final status arrives via webhook.
3

Handle webhooks

Subscribe your endpoint and process transaction.* events.

Webhook guide

Signature verification, retries, and idempotent handling.

Code examples

curl -X POST "https://api.fingopay.io/v1/mpesa/charge" \
  -H "Authorization: Bearer sk_test_***" \
  -H "Content-Type: application/json" \
  -d '{
    "phoneNumber": "+254712345678",
    "amount": 150000,
    "merchantTransactionId": "order_12345",
    "narration": "Order #12345"
  }'

Next steps