Open a PalmKash merchant wallet in minutes, then collect payments and send payouts from one dashboard and a single REST API. Palm-biometric checkout is built in for when you need it.
A full stack of payment building blocks you can consume through the PalmKash dashboard or REST API.
Accept payments by scanning a customer's palm — no cards, no phones. Initiate a charge and confirm it biometrically.
POST /payments/make-paymentDisburse funds and process merchant withdrawals to mobile money or bank accounts, then track each payout to settlement.
POST /payments/make-withdrawTurn any terminal into a palm-enabled point of sale. Drive in-store checkout flows and stream transaction status live.
POST /posGive clients and merchants balances that credit and debit in real time, with a full ledger of every transaction.
ClientWallet · LedgerOnboard merchants, spin up agent networks and manage roles, terminals and API tokens from a single dashboard.
Onboarding · RBACQuery transaction history, reconcile settlements and pull Z-reports for every terminal and time window.
GET /transationStatus/{id}Receive signed, real-time notifications the moment a payment, credit or withdrawal changes state.
POST /payment-callbackRegister a customer's palm once with the Keyo biometric engine, then reuse it across every PalmKash channel.
POST /enrol-palmConfigure settlement accounts, apply chargeable fees and settle collected funds on your own schedule.
SettlementAccount · FeesAuthenticate with your merchant key, sign each request with HMAC-SHA256, and run payments and withdrawals in minutes — each with a matching status endpoint.
make-payment to collect, get-payment-status to track itmake-withdraw to pay out, get-withdraw-status to confirmclient_reference# Initiate a payment curl -X POST https://dashboard.palmkash.com/v1/payments/make-payment \ -H "X-Merchant-Key: PK_34556ardeaaa" \ -H "Content-Type: application/json" \ -d '{ "merchant_id": "PK_34556ardeaaa", "client_reference": "INV-1042", "phone_number": "250789777777", "currency": "RWF", "amount": 10000, "callback_url": "https://shop.com/callback" }' # → 200 OK { "reference": "0010001", "status": "pending" }
# Check a payment's status curl -X POST https://dashboard.palmkash.com/v1/payments/get-payment-status \ -H "X-Merchant-Key: PK_34556ardeaaa" \ -H "Content-Type: application/json" \ -d '{ "merchant_id": "PK_34556ardeaaa", "reference": "0010001" }' # → 200 OK { "message": "payment in progress", "status": "success", "data": { "reference": "0010001", "status": "pending" } }
# Initiate a withdrawal / payout curl -X POST https://dashboard.palmkash.com/v1/payments/make-withdraw \ -H "X-Merchant-Key: PK_34556ardeaaa" \ -H "Content-Type: application/json" \ -d '{ "merchant_id": "PK_34556ardeaaa", "client_reference": "PO-2207", "phone_number": "250789777777", "currency": "RWF", "amount": 50000, "callback_url": "https://shop.com/callback" }' # → 200 OK { "reference": "0010002", "status": "pending" }
# Check a withdrawal's status curl -X POST https://dashboard.palmkash.com/v1/payments/get-withdraw-status \ -H "X-Merchant-Key: PK_34556ardeaaa" \ -H "Content-Type: application/json" \ -d '{ "merchant_id": "PK_34556ardeaaa", "reference": "0010002" }' # → 200 OK { "message": "withdrawal in progress", "status": "success", "data": { "reference": "0010002", "status": "pending" } }
Sign up as a merchant and get your API keys instantly.
Call make-payment or make-withdraw via the API or POS.
Poll the status endpoint; palm biometrics add checkout security.
Get a signed webhook, then settle funds and pull reports.
Create a merchant account, grab your API keys, and go live in minutes.