Start in test mode. Use your test secret key from the Kyshi dashboard and make requests from your backend only.
1. Set Your Base URL
https://api.kyshi.coAll public endpoints are versioned under /v1.
2. Send Your Secret Key
curl https://api.kyshi.co/v1/transactions/history \
-H "x-api-key: sk_test_xxxxxxxxxxxxxxxxxxxxx"3. Initialize A Test Transaction
curl https://api.kyshi.co/v1/transactions/initialize \
-H "Content-Type: application/json" \
-H "x-api-key: sk_test_xxxxxxxxxxxxxxxxxxxxx" \
-d '{
"email": "[email protected]",
"amount": 1000,
"localCurrency": "NGN",
"amountCurrency": "local",
"reference": "ORDER-10001",
"redirectUrl": "https://example.com/payment/callback"
}'Use the checkout URL returned in data, then verify the transaction with the reference after checkout or webhook receipt.
4. Verify Before Giving Value
curl https://api.kyshi.co/v1/transactions/verify/ORDER-10001 \
-H "x-api-key: sk_test_xxxxxxxxxxxxxxxxxxxxx"Only mark an order as paid after your backend confirms the final status from Kyshi.
5. Reconcile Later
Use transaction history, transfer history, wallet balances, and webhooks together. Webhooks give you real-time updates; list endpoints give you a way to recover from missed events or network issues.
