Documentation Index
Fetch the complete documentation index at: https://docs.kler.africa/llms.txt
Use this file to discover all available pages before exploring further.
Create session
POST /v1/sessions
Your organisation’s API key.
Your platform’s unique identifier for this event.
Human-readable event name. Used as the collection account name.
Currency code. Currently only NGN is supported.
ISO 8601 datetime for when the event starts.
ISO 8601 datetime for when the event ends.
Whether to provision a dedicated collection account.
Whether to assign POS terminals.
Number of POS terminals to assign (1–50). Required if pos is true.
URL Kler will POST transaction events to. See Webhooks.
Arbitrary JSON to attach to the session.
curl -X POST https://api.kler.africa/v1/sessions \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"external_event_id": "evt_abc123",
"name": "Lagos Music Festival 2025",
"collection": { "account": true, "pos": true, "pos_count": 2 },
"webhook_url": "https://yourplatform.com/webhooks/kler"
}'
{
"success": true,
"data": {
"session_id": "3f1e2d...",
"status": "active",
"external_event_id": "evt_abc123",
"name": "Lagos Music Festival 2025",
"currency": "NGN",
"collection_account": {
"account_number": "1234567890",
"account_name": "Kler / Lagos Music Festival 2025",
"bank_name": "Providus Bank",
"bank_code": "101"
},
"pos_terminals": [
{ "terminal_id": "pos_3f1e2d_001", "label": "Terminal 1", "status": "assigned" },
{ "terminal_id": "pos_3f1e2d_002", "label": "Terminal 2", "status": "assigned" }
],
"created_at": "2025-08-01T10:00:00.000Z"
}
}
Get session
GET /v1/sessions/:id
curl https://api.kler.africa/v1/sessions/3f1e2d... \
-H "x-api-key: YOUR_API_KEY"
Close session
PATCH /v1/sessions/:id/close
Marks the session as closed. No further payments will be accepted.
curl -X PATCH https://api.kler.africa/v1/sessions/3f1e2d.../close \
-H "x-api-key: YOUR_API_KEY"
{
"success": true,
"data": {
"session_id": "3f1e2d...",
"status": "closed"
}
}