Developer Portal
Ctrl K
BILL PAYMENT
Electricity Bill Payment API
Verify electricity meter numbers and purchase prepaid meter tokens or pay postpaid bills across all 12 Nigerian Distribution Companies (DISCOs).
Step 1: Fetch Available Electricity DISCOs
GET
/api/v1/electricity/variations
Supported DISCO Identifiers & Discount Rates
| DISTRIBUTION COMPANY (DISCO) | SERVICE ID (serviceID) |
DISCOUNT (BASE PRICE) | SUPPORTED METERS | STATUS |
|---|---|---|---|---|
| Ikeja Electric (IKEDC) | ikeja-electric |
0.0% | Prepaid & Postpaid | Active |
| Eko Electric (EKEDC) | eko-electric |
0.0% | Prepaid & Postpaid | Active |
| Abuja Electric (AEDC) | abuja-electric |
0.0% | Prepaid & Postpaid | Active |
| Kano Electric (KEDCO) | kano-electric |
0.0% | Prepaid & Postpaid | Active |
| Port Harcourt Electric (PHED) | portharcourt-electric |
0.0% | Prepaid & Postpaid | Active |
| Jos Electric (JED) | jos-electric |
0.0% | Prepaid & Postpaid | Active |
| Ibadan Electric (IBEDC) | ibadan-electric |
0.0% | Prepaid & Postpaid | Active |
| Kaduna Electric (KAEDCO) | kaduna-electric |
0.0% | Prepaid & Postpaid | Active |
| Enugu Electric (EEDC) | enugu-electric |
0.0% | Prepaid & Postpaid | Active |
| Benin Electric (BEDC) | benin-electric |
0.0% | Prepaid & Postpaid | Active |
| Aba Electric (ABA) | aba-electric |
0.0% | Prepaid & Postpaid | Active |
| Yola Electric (YEDC) | yola-electric |
0.0% | Prepaid & Postpaid | Active |
Step 2: Verify Meter Number
Validate the meter number prior to payment to retrieve the customer name and confirm account status.
POST
/api/v1/electricity/verify
| PARAMETER | TYPE | DESCRIPTION | REQUIRED |
|---|---|---|---|
serviceID |
string | DISCO identifier (e.g. ikeja-electric, abuja-electric). |
Required |
billersCode |
string | Meter number or Account number. | Required |
type |
string | Meter type: prepaid or postpaid. |
Required |
Step 3: Purchase Electricity / Token
POST
/api/v1/electricity/purchase
Authentication & Headers
| HEADER | VALUE | REQUIRED |
|---|---|---|
Authorization |
Bearer YOUR_API_TOKEN |
Yes |
Content-Type |
application/json |
Yes |
Purchase Parameters
| PARAMETER | TYPE | DESCRIPTION | REQUIRED |
|---|---|---|---|
serviceID |
string | DISCO identifier (e.g. ikeja-electric, abuja-electric). |
Required |
billersCode |
string | Meter number. | Required |
variation_code |
string | Meter type code: prepaid or postpaid (e.g. ikeja-electric-prepaid). |
Required |
amount |
numeric | Payment amount in Naira (minimum ₦500). | Required |
phone |
string | 11-digit customer phone number to receive meter token SMS. | Required |
request_id |
string | Optional unique reference ID for idempotency and duplicate request protection. | Optional |
Sample Request Payload
JSON{
"serviceID": "ikeja-electric",
"billersCode": "11111111111",
"variation_code": "prepaid",
"amount": 2000,
"phone": "08012345678",
"request_id": "REQ_ELEC_77218"
}
Success Response (200 OK)
{
"status": "success",
"code": 200,
"message": "Electricity successful",
"data": {
"transaction_ref": "202610194829107",
"request_id": "REQ_ELEC_77218",
"amount": 2000,
"commission_earned": 20.0,
"token": "4820-2910-4820-1928-4019",
"units": "24.5 kWh",
"new_balance": 1742.0,
"status": "success"
}
}
Failed Response (400 Bad Request)
{
"status": "failed",
"code": 400,
"message": "Electricity failed."
}