IKONECT API
Build and scale your fintech products with IKONECT APIs. Integrate airtime, data bundles, and identity services into your applications with a single, unified API designed for developers.
MTN, Airtel, Glo, 9mobile
SME, Gifting, Corporate
Real-time identity
Bank KYC
⚡ Why developers choose IKONECT
Modern REST APIs, detailed documentation, and a sandbox environment. 99.9% uptime with redundant connections to all major providers. Built to handle high-volume traffic with low-latency response times.
Getting Started
Follow these four steps to go from zero to production.
From Settings > API section
Fund wallet, switch to Live Key
Authentication
All endpoints require an API key. We support multiple authentication methods:
- Authorization: Bearer YOUR_API_KEY
- X-API-Key: YOUR_API_KEY
- Token: YOUR_API_KEY
Your API key can be generated from your profile page.
Base URL
https://ikonect.com.ng/api/v1/
All endpoints are relative to this base URL. Example: /data/ → https://ikonect.com.ng/api/v1/data/
API Reference
Service Pricing
Fees are deducted from your wallet on each successful API call.
| Service | Endpoint | Price (₦) |
|---|---|---|
| Airtime | POST /airtime/ | Amount entered |
| Data Purchase | POST /data/ | Plan-dependent |
| Data Catalog | GET /dataplans/ | Free |
| TV Subscription | POST /tv/ | Plan-dependent |
| TV Verification | POST /tv/verify | Free |
| Electricity | POST /electricity/ | Amount entered |
| Electricity Verify | POST /electricity/verify | Free |
| NIN Verification | POST /nin/ | ₦200.00 |
| BVN Verification | POST /bvn/ | ₦200.00 |
| IPE Clearance | POST /ipe/ (clearance) | ₦650.00 |
| IPE Status | POST /ipe/ (status) | Free |
| Wallet Balance | GET /balance/ | Free |
Prices subject to change. The exact price at the time of the API call will be charged.
Get your current wallet balance.
curl --request GET \
--url https://ikonect.com.ng/api/v1/balance/ \
--header 'Authorization: Bearer YOUR_API_KEY'
Try It
Purchase airtime (₦50 – ₦50,000) for MTN, Airtel, Glo, or 9mobile.
curl --request POST \
--url https://ikonect.com.ng/api/v1/airtime/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"network": "mtn",
"phone": "08011111111",
"amount": 50,
"airtime_type": "VTU"
}'
Try It
Purchase a data plan using its service_id.
curl --request POST \
--url https://ikonect.com.ng/api/v1/data/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"network": "mtn",
"phone": "08065849433",
"data_plan": "293"
}'
Try It
Retrieve all active data plans (Inlomax‑compatible structure).
?network=mtn ?category=AWOOF
curl --request GET \
--url https://ikonect.com.ng/api/v1/dataplans/ \
--header 'Authorization: Bearer YOUR_API_KEY'
Try It
Subscribe to DStv, GOtv, or Startimes using plan_id.
curl --request POST \
--url https://ikonect.com.ng/api/v1/tv/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"provider": "dstv",
"smartcard_number": "1212121212",
"plan_id": 6,
"phone": "08105314004"
}'
Try It
Pay electricity bills for supported discos: ikeja, eko, abuja, portharcourt, benin, kaduna.
curl --request POST \
--url https://ikonect.com.ng/api/v1/electricity/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"disco": "ikeja",
"meter_number": "1111111111111",
"amount": 1000,
"phone": "08105314004",
"meter_type": "prepaid"
}'
Try It
Verify a National Identification Number (NIN).
curl --request POST \
--url https://ikonect.com.ng/api/v1/nin/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"nin": "12345678901"
}'
Try It
Verify a Bank Verification Number (BVN).
curl --request POST \
--url https://ikonect.com.ng/api/v1/bvn/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"bvn": "22588899625"
}'
Try It
Submit an IPE clearance request or check its status using action.
curl --request POST \
--url https://ikonect.com.ng/api/v1/ipe/ \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"action": "clearance",
"tracking_id": "7Y0ORZS4003KLWV"
}'
Try It
Error Responses
All errors return a JSON object with an error field and an appropriate HTTP status code:
{
"error": "Invalid API key",
"code": 401
}
{
"error": "Insufficient balance",
"code": 402
}
{
"error": "Rate limit exceeded",
"code": 429
}
{
"error": "Verification failed",
"code": 400
}
Need help?