Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Kora Charges API

Pay-ins - card, bank transfer, mobile money, and pay-with-bank.

Kora Charges API is one of 7 APIs that Kora publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Charges. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.

This API exposes 8 operations across 8 paths, and defines 10 schemas. It is described by OpenAPI 3.0.3, at version 1.0.

Requests are made against a single base URL, https://api.korapay.com/merchant/api/v1.

8 operations 8 paths 10 schemas 2 GET6 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
1.0
Base URL
https://api.korapay.com/merchant/api/v1
Authentication
HTTP Bearer, HTTP Bearer
Resource Areas
1

Authentication & Security 2

Kora Charges API declares 2 security schemes for authenticating requests. It accepts HTTP bearer tokens (secretKeyAuth). It accepts HTTP bearer tokens (publicKeyAuth). By default, every request must be authenticated.

  • secretKeyAuth — Secret API key passed as Authorization: Bearer sk.... Required for server-side and financial operations (payouts, balances, virtual bank accounts, refunds, con…
  • publicKeyAuth — Public API key (pk...) used from client-side code to initiate charges. Cannot access financial data.

Paths & Operations 8

Across 8 paths, the API surfaces 8 operations — 2 GET, 6 POST. Each is listed below with its method, path, parameters, and response codes.

Charges 8

Pay-ins - card, bank transfer, mobile money, and pay-with-bank.

POST
/charges/initialize
Initialize a charge
initializeCharge body → 200401
POST
/charges/card
Charge a card
chargeCard body → 200401
POST
/charges/card/authorize
Authorize a card charge
authorizeCardCharge body → 200401
POST
/charges/mobile-money
Charge a mobile money wallet
chargeMobileMoney body → 200401
POST
/charges/mobile-money/authorize
Authorize a mobile money charge
authorizeMobileMoneyCharge body → 200401
POST
/charge/pay-with-bank
Charge with Pay with Bank
chargePayWithBank body → 200401
GET
/charge/pay-with-bank/banks
List Pay with Bank banks
listPayWithBankBanks → 200401
GET
/charges/{reference}
Verify / query a charge
verifyCharge 1 param → 200401404

Schemas 10

The contract defines 10 schemas that model the data the API accepts and returns. The most detailed are MobileMoneyChargeInput (8 properties), InitializeChargeInput (8 properties), PayWithBankInput (6 properties), ErrorResponse (3 properties). Each schema is shown below with its type and property counts.

CardAuthorizationInput
object
2 properties 2 required
MobileMoneyChargeInput
object
8 properties 5 required
ChargeResponse
object
3 properties
ErrorResponse
object
3 properties
Customer
object
2 properties
InitializeChargeInput
object
8 properties 4 required
MobileMoneyAuthorizationInput
object
2 properties 2 required
BankList
object
3 properties
EncryptedChargeInput
object
1 property 1 required
PayWithBankInput
object
6 properties 4 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

korapay-charges-api-openapi.yml Raw ↑

Other APIs Kora publishes across the network.

Kora Balances API
Kora Currency Conversion API
Kora Misc API
Kora Payouts API
Kora Refunds API
Kora Virtual Bank Accounts API