PLN Prabayar (Token Listrik)
Beli token listrik PLN prabayar untuk nomor meter pelanggan. Menggunakan alur dua langkah: inquiry → transaksi.
Endpoint
| Endpoint | Keterangan |
|---|---|
POST /api/v1/merchant/ppob/pln/prepaid/inquiry | Inquiry nomor meter, cek nama pelanggan & tarif |
POST /api/v1/merchant/ppob/pln/prepaid/transaction | Beli token listrik |
Inquiry PLN Prabayar
Memvalidasi nomor meter dan mendapatkan informasi pelanggan sebelum pembelian. Tidak memotong saldo.
URL: POST /api/v1/merchant/ppob/pln/prepaid/inquiry
Request
| Field | Tipe | Wajib | Keterangan |
|---|---|---|---|
product_id | String | Ya | Kode produk PLN prabayar (dari katalog) |
cust_id | String | Ya | Nomor meter listrik atau ID pelanggan PLN |
Contoh Request
{
"product_id": "PLNPREP",
"cust_id": "12345678901"
}
curl -X POST "https://api-sandbox.alfakios.com/api/v1/merchant/ppob/pln/prepaid/inquiry" \
-H "Content-Type: application/json" \
-H "X-API-Key: apk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-d '{"product_id": "PLNPREP", "cust_id": "12345678901"}'
Response Inquiry Berhasil
{
"success": true,
"message": "PLN prepaid inquiry completed successfully",
"rc": "000",
"data": {
"req_id": "",
"ref_id": "1777946295495371000",
"product_id": "PLNPREP",
"cust_id": "12345678901",
"status": "SUCCESS",
"rc": "000",
"description": "Transaksi Sukses",
"message": "INQUIRY PLN PREPAID KE 12345678901 SUKSES",
"amount": "20000",
"unit_price": "21500",
"balance_used": "0",
"balance": "500000",
"serial_no": "",
"data": {
"nama_pelanggan": "BUDI SANTOSO",
"tarif": "R1/TR",
"daya": "1300 VA",
"nomor_meter": "12345678901"
}
}
}
Transaksi PLN Prabayar
Membeli token listrik. Saldo merchant akan dipotong.
URL: POST /api/v1/merchant/ppob/pln/prepaid/transaction
Request
| Field | Tipe | Wajib | Keterangan |
|---|---|---|---|
req_id | String | Ya | ID unik transaksi (idempotency key) |
product_id | String | Ya | Kode produk PLN prabayar |
cust_id | String | Ya | Nomor meter (sama dengan inquiry) |
Contoh Request
{
"req_id": "TXN-20240501-020",
"product_id": "PLNPREP",
"cust_id": "12345678901"
}
curl -X POST "https://api-sandbox.alfakios.com/api/v1/merchant/ppob/pln/prepaid/transaction" \
-H "Content-Type: application/json" \
-H "X-API-Key: apk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
-d '{
"req_id": "TXN-20240501-020",
"product_id": "PLNPREP",
"cust_id": "12345678901"
}'
Response Berhasil
{
"success": true,
"message": "PLN prepaid top-up created successfully",
"rc": "000",
"data": {
"req_id": "TXN-20240501-020",
"ref_id": "1777946295495372000",
"product_id": "PLNPREP",
"cust_id": "12345678901",
"status": "SUCCESS",
"rc": "000",
"description": "Transaksi Sukses",
"message": "TOKEN PLN 20000 KE 12345678901 SUKSES",
"amount": "20000",
"unit_price": "21500",
"balance_used": "21500",
"balance": "478500",
"serial_no": "0123-4567-8901-2345-6789",
"data": {
"token": "0123-4567-8901-2345-6789",
"kwh": "9.1",
"nama_pelanggan": "BUDI SANTOSO",
"tarif": "R1/TR"
}
}
}
Token Listrik tersedia di field
serial_nodandata.token. Tampilkan nilai ini kepada pelanggan untuk diinput ke meteran listrik.
Kode Produk PLN Prabayar
product_id | Denom | Keterangan |
|---|---|---|
PLNPREP | Dinamis | Token PLN Prabayar (harga sesuai nominal) |
PLN20 | 20.000 | Token PLN Rp 20.000 |
PLN50 | 50.000 | Token PLN Rp 50.000 |
PLN100 | 100.000 | Token PLN Rp 100.000 |
PLN200 | 200.000 | Token PLN Rp 200.000 |
PLN500 | 500.000 | Token PLN Rp 500.000 |
PLN1000 | 1.000.000 | Token PLN Rp 1.000.000 |
Gunakan endpoint Katalog Produk untuk daftar produk yang tersedia di akun Anda.
Catatan
- Token listrik tersedia di field
serial_nosetelah transaksi sukses. - Format token:
XXXX-XXXX-XXXX-XXXX-XXXX(20 digit). - Jika
status: "PENDING", gunakan Cek Status untuk polling.