Charge Transaction
Use this endpoint when you want Kyshi to create a charge that is paid by bank transfer. The request body uses the same customer, currency, fee, and amount fields as transaction initialization.
-H "x-api-key: your_secret_key"POST {{host}}/v1/transactions/chargeRequest Body
| Field | Data Type | Required | Description |
|---|---|---|---|
| string | Yes | Customer email address. | |
| amount | number | Yes | Amount to collect in major currency units. |
| localCurrency | string | Yes | Collection currency. Supported values: NGN, KES, ZAR, GHS, XOF, USD. |
| amountCurrency | string | No | settlement or local. Defaults to settlement. |
| reference | string | No | Your unique transaction reference. |
| feeBearer | string | No | MERCHANT or CUSTOMER. |
| taxChargeable | string | No | INCLUSIVE or EXCLUSIVE. |
| chargeType | string | No | Use BANK_TRANSFER for bank transfer charges. |
| expiresAt | string | No | Expiry date/time for bank transfer charges when supported by the provider. |
{
"email": "[email protected]",
"amount": 5000,
"localCurrency": "NGN",
"amountCurrency": "local",
"reference": "BT-10001",
"chargeType": "BANK_TRANSFER",
"expiresAt": "2026-05-20T23:59:59Z"
}{
"status": true,
"message": "Success",
"code": 201,
"data": {
"reference": "BT-10001",
"status": "PENDING",
"amount": 5000,
"currency": "NGN",
"paymentType": "BANK_TRANSFER",
"accountNumber": "1234567890",
"accountName": "KYSHI / CUSTOMER",
"bankName": "Wema Bank"
}
}Updated about 12 hours ago
