C
Coresis API Docs PPOB, PLN, Pulsa & E-Wallet Integration
Admin Panel
PANDUAN UTAMA Terakhir Diperbarui: Oktober 2026

Dokumentasi API Coresis Gateway

Selamat datang di dokumentasi resmi integrasi API Coresis. API ini dirancang khusus untuk memfasilitasi transaksi digital mitra secara aman, berkecepatan tinggi, dan *real-time* meliputi pengisian Pulsa & Paket Data, Topup Saldo E-Wallet, Pembelian Token PLN (Prepaid), serta Pembayaran Tagihan Listrik PLN (Postpaid).

Format JSON Modern

Semua pertukaran data (Request dan Response) menggunakan format standar application/json.

Model Hybrid

Mendukung respon langsung (Synchronous) maupun pembaruan otomatis status akhir via Webhook Callback.

Keamanan Atomic Saldo

Proteksi transaksi duplikat per mitraidtrx dengan pemotongan & *refund* saldo mutlak atomik.

Autentikasi (HTTP Bearer Token)

Setiap permintaan ke API Coresis wajib menyertakan header Authorization berformat Bearer Token.

Rumus Pembuatan Token:

Authorization: Bearer base64(kodemitra:password)

Contoh: Jika kodemitra = MTR-B2B-01 dan password = Rahasia123, maka gabungkan menjadi MTR-B2B-01:Rahasia123 lalu di-encode Base64 menjadi TVRSLUIyQi0wMTpSYWhhc2lhMTIz.

Tool Generator Header Authorization (Langsung Coba)

LINGKUNGAN SIMULASI & UJI COBA Unified Sandbox Engine

Mode Sandbox & Panduan Pengujian API

Coresis Gateway menyediakan lingkungan Sandbox Terpadu yang dirancang agar calon mitra dapat menguji integrasi API secara mandiri (self-service) dengan cepat, aman, dan tanpa biaya.

Fasilitas Switch Mode Mandiri (Self-Service)

Mitra dapat beralih antara Mode Production dan Mode Sandbox kapan saja secara mandiri melalui menu Integrasi & Webhook di Portal Mitra (mitra.coresis.id) tanpa perlu menghubungi admin.

Buka Pengaturan Mode →
1

Satu Endpoint Terpadu (Unified URL)

Mitra TIDAK PERLU mengganti base URL atau endpoint API. Rute endpoint (https://api.coresis.id/api/...) dan Bearer Token yang digunakan pada Sandbox adalah 100% sama dengan mode Produksi.

2

Saldo Virtual Tanpa Risiko Finansial

Ketika akun Anda berada dalam mode Sandbox, saldo yang terpotong adalah saldo virtual simulasi. Anda bebas melakukan puluhan pengujian transaksi tanpa memotong dana nyata.

3

Simulasi Delay & Callback Otomatis

Transaksi asynchronous mengembalikan status PENDING pada inisiasi awal. Setelah 2 detik, sistem simulasi meng-update status akhir dan otomatis mengirimkan payload Webhook Callback ke URL server Anda.

4

Auto-Refund Saldo Mutlak

Sama persis seperti di lingkungan produksi, setiap kali transaksi simulasi berstatus GAGAL, saldo virtual Anda akan langsung dikembalikan (*refund*) ke akun secara atomik.

Tabel Skenario Pengujian & Magic Numbers

Gunakan nomor sakti berikut untuk menguji berbagai respon dan error handling pada sistem Anda:

Simulasi Mandiri
Skenario Uji Nomor Tujuan / IDPEL Respon Inisiasi Hasil Akhir (Callback / Advice) Efek Saldo
Transaksi Sukses Nomor umum apa saja
Contoh: 081234567890 / 51234567890
200 PENDING SUKSES (RC 000)

Mock SN / Token 20 Digit PLN dihasilkan

- Nominal Harga
Akun Terblokir / Ditolak Berakhiran 023
Contoh: 081234567023
200 PENDING GAGAL (RC 023)

Nomor Tujuan Terblokir / Tidak Terdaftar

Auto-Refund 100%
Gangguan Biller / Operator Berakhiran 014
Contoh: 081234567014
200 PENDING GAGAL (RC 014)

Sistem Biller Gangguan / Sedang Cut Off

Auto-Refund 100%
IDPEL PLN Tidak Ditemukan Berakhiran 99
Contoh: 51234567899
200 GAGAL GAGAL (RC 099)

ID Pelanggan PLN Tidak Terdaftar

Saldo Tidak Terpotong / Refund
Tagihan Sudah Lunas (Postpaid) Berakhiran 88
Contoh: 51234567888
200 GAGAL GAGAL (RC 088)

Tagihan Listrik Sudah Dibayar

Saldo Tidak Terpotong
Saldo Tidak Mencukupi Nomor apa saja dengan nominal transaksi melebihi saldo virtual 400 Bad Request RC 013

Saldo tidak cukup untuk transaksi

Saldo Tidak Terpotong
Duplikasi Transaksi (Replay) Kirimkan mitraidtrx yang persis sama 2 kali 400 Bad Request RC 001

Duplicate Transaction ID

Saldo Tidak Terpotong

Siap untuk Go-Live ke Production?

Peralihan dari Sandbox ke Production (maupun sebaliknya) dapat dilakukan 100% mandiri tanpa mengubah kodingan, kredensial, atau endpoint URL sama sekali:

Langkah 1: Uji Coba Simulasi Uji transaksi di mode Sandbox hingga aplikasi Anda berhasil menangani status PENDING, SUKSES, GAGAL, dan Webhook Callback otomatis.
Langkah 2: Switch Mandiri di Portal Buka Portal Mitra → Integrasi & Webhook, lalu klik tombol switch Mode Akun dari SANDBOX ke PRODUCTION secara instan.
Langkah 3: Topup & Transaksi Nyata Lakukan Topup deposit saldo riil di Portal Mitra. Permintaan transaksi Anda otomatis langsung memotong saldo nyata dan diteruskan ke operator/biller riil!
💡 Tips: Anda dapat beralih kembali ke mode Sandbox kapan saja jika membutuhkan pengujian fitur baru tanpa risiko finansial. Buka Portal Mitra →
POST /api/saldo

Cek Saldo Mitra

Digunakan untuk mengambil informasi terkini sisa saldo PPOB, saldo Payin, dan saldo Payout akun mitra Anda.

Tabel Parameter Request Body (JSON)
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai tetap: "check_saldo"
Contoh Request (cURL)
curl -X POST https://api.coresis.id/api/saldo \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "check_saldo"
  }'
Tabel Informasi Parameter Response
Field Tipe Keterangan
status boolean true jika berhasil, false jika gagal
message string Pesan keterangan hasil permintaan
data.kodemitra string Kode identitas mitra terdaftar
data.namamitra string Nama profil mitra
data.saldo_ppob number Sisa saldo aktif untuk transaksi produk PPOB, Pulsa, & E-Wallet
Contoh Response Sukses (HTTP 200)
{
  "status": true,
  "message": "Success",
  "data": {
    "kodemitra": "MTR-B2B-01",
    "namamitra": "Mitra Alpha",
    "saldo_ppob": 15000000,
    "saldo_payin": 0,
    "saldo_payout": 0
  }
}
Contoh Response Gagal (HTTP 401)
{
  "status": false,
  "message": "Unauthorized: Incorrect password"
}
POST /api/pulsa

Topup Pulsa & Paket Data

Digunakan untuk melakukan pengisian pulsa reguler GSM, pulsa transfer, dan paket kuota data.

Tabel Parameter Request Body (JSON)
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai tetap: "topup_pulsa"
mitraidtrx string (1-50) Ya Nomor referensi unik transaksi mitra (tidak boleh duplikat). Contoh: "TRXPULSA-00123"
kodeproduk string Ya Kode produk yang terdaftar di menu Harga Mitra. Contoh: "TS10", "IS5"
tujuan string Ya Nomor HP tujuan (diawali 08/628, min 10 digit). Contoh: "081295725667"
Contoh Request Topup Pulsa (cURL)
curl -X POST https://api.coresis.id/api/pulsa \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "topup_pulsa",
    "mitraidtrx": "TRXPULSA-17910001",
    "kodeproduk": "TS10",
    "tujuan": "081295725667"
  }'
Tabel Informasi Parameter Response Topup Pulsa
Field Tipe Keterangan
mitraidtrx string ID transaksi yang dikirimkan oleh mitra
tujuan string Nomor handphone tujuan transaksi
status string Status awal transaksi: "PENDING" atau "GAGAL"
rc string Kode respon error jika gagal langsung (contoh: "003" untuk saldo kurang)
Respon Awal (HTTP 200 - PENDING)
{
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667",
  "status": "PENDING"
}
Respon Gagal Langsung (HTTP 400)
{
  "status": "GAGAL",
  "rc": "003",
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667"
}
POST /api/pulsa

Advice (Pengecekan Status Transaksi Pulsa)

Gunakan endpoint ini jika transaksi Anda sempat berstatus PENDING atau mengalami *timeout* untuk mengetahui status akhir.

Tabel Parameter Request Body (JSON)
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai tetap: "advice"
mitraidtrx string Ya Nomor ID transaksi mitra yang ingin dicek statusnya
Contoh Request Advice Pulsa (cURL)
curl -X POST https://api.coresis.id/api/pulsa \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "advice",
    "mitraidtrx": "TRXPULSA-17910001"
  }'
Tabel Informasi Parameter Response Advice Pulsa
Field Tipe Keterangan
status string Status akhir transaksi: "SUKSES", "GAGAL", atau "PENDING"
rc string Response Code ("000" jika sukses, atau kode gagal bila gagal)
mitraidtrx string ID transaksi mitra yang dicek
tujuan string Nomor HP tujuan transaksi
Contoh Response Advice Sukses (HTTP 200)
{
  "status": "SUKSES",
  "rc": "000",
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667"
}
Contoh Response Advice Gagal (HTTP 200 / 404)
{
  "status": "GAGAL",
  "rc": "014",
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667"
}
WEBHOOK / HTTP POST

Callback Pulsa (Notifikasi Otomatis)

Ketika transaksi pengisian Pulsa & Paket Data yang awalnya berstatus PENDING selesai diproses oleh operator telekomunikasi (menjadi SUKSES atau GAGAL), Coresis akan secara otomatis mengirimkan notifikasi Webhook via HTTP POST JSON ke URL Callback Pulsa yang didaftarkan di profil mitra.

Tabel Informasi Parameter Payload Callback Pulsa
Field Tipe Keterangan
mitraidtrx string Nomor referensi ID transaksi unik yang Anda kirimkan saat transaksi awal
tujuan string Nomor HP pelanggan penerima pulsa / paket data
status string Status akhir transaksi: "SUKSES" atau "GAGAL"
rc string Kode status respon ("000" jika sukses, atau kode gagal seperti "007", "014", "099")
refid string Nomor Serial Number (SN) pulsa dari operator resmi (kosong jika transaksi gagal)
Contoh Callback Pulsa Sukses
{
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667",
  "status": "SUKSES",
  "rc": "000",
  "refid": "0041001380658412"
}
Contoh Callback Pulsa Gagal
{
  "mitraidtrx": "TRXPULSA-17910001",
  "tujuan": "081295725667",
  "status": "GAGAL",
  "rc": "014",
  "refid": ""
}

Respon yang Wajib Diberikan Server Mitra (HTTP 200 OK):

Setelah menerima callback di atas, endpoint server Anda wajib merespon HTTP status 200 OK dengan format JSON:

{"status": "success", "message": "Callback diterima"}
POST /api/ewallet

Topup E-Wallet (DANA, OVO, GOPAY, SHOPEEPAY, LINKAJA)

Digunakan untuk topup saldo dompet digital dengan nominal dinamis.

Tabel Parameter Request Body (JSON)
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai tetap: "topup_ewallet"
mitraidtrx string (1-50) Ya Nomor referensi unik transaksi. Contoh: "TRXDANA-1791426306"
kodeproduk string Ya Kode produk E-Wallet: "DANA", "OVO", "GOPAY", "SHOPEEPAY"
tujuan string Ya Nomor HP akun e-wallet pelanggan. Contoh: "081380312001"
nominal number Ya Nominal pengisian (angka bulat tanpa koma). Contoh: 20000
Contoh Request Topup E-Wallet (cURL)
curl -X POST https://api.coresis.id/api/ewallet \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "topup_ewallet",
    "mitraidtrx": "TRXDANA-1791426306",
    "kodeproduk": "DANA",
    "tujuan": "081380312001",
    "nominal": 20000
  }'
Tabel Informasi Parameter Response Topup E-Wallet
Field Tipe Keterangan
mitraidtrx string ID transaksi yang dikirimkan mitra
tujuan string Nomor HP tujuan akun e-wallet
status string Status awal: "PENDING" atau "GAGAL"
rc string Kode respon error jika gagal langsung
Respon Awal (HTTP 200 - PENDING)
{
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001",
  "status": "PENDING"
}
Respon Gagal (HTTP 400)
{
  "status": "GAGAL",
  "rc": "003",
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001"
}
POST /api/ewallet

Advice (Pengecekan Status Transaksi E-Wallet)

Gunakan endpoint ini untuk mengecek status transaksi E-Wallet berdasarkan referensi mitraidtrx.

Tabel Parameter Request Body (JSON)
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai tetap: "advice"
mitraidtrx string Ya ID transaksi mitra yang ingin dicek statusnya
Contoh Request Advice E-Wallet (cURL)
curl -X POST https://api.coresis.id/api/ewallet \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "advice",
    "mitraidtrx": "TRXDANA-1791426306"
  }'
Tabel Informasi Parameter Response Advice E-Wallet
Field Tipe Keterangan
status string Status akhir: "SUKSES" atau "GAGAL"
rc string Kode status respon (misal: "000" jika sukses)
mitraidtrx string ID transaksi mitra yang dicek
tujuan string Nomor HP tujuan akun e-wallet
Contoh Response Advice Sukses (HTTP 200)
{
  "status": "SUKSES",
  "rc": "000",
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001"
}
Contoh Response Advice Gagal (HTTP 200 / 404)
{
  "status": "GAGAL",
  "rc": "007",
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001"
}
WEBHOOK / HTTP POST

Callback E-Wallet (Notifikasi Otomatis)

Ketika transaksi topup E-Wallet yang awalnya berstatus PENDING selesai diproses oleh operator/biller (menjadi SUKSES atau GAGAL), Coresis akan secara otomatis menembakkan notifikasi Webhook via HTTP POST JSON ke URL Callback E-Wallet yang Anda tentukan di profil mitra.

Tabel Informasi Parameter Payload Callback E-Wallet
Field Tipe Keterangan
mitraidtrx string Nomor referensi ID transaksi unik yang Anda kirimkan saat transaksi awal
tujuan string Nomor HP / akun e-wallet pelanggan yang ditopup
status string Status akhir transaksi: "SUKSES" atau "GAGAL"
rc string Kode status respon ("000" jika sukses, atau kode gagal seperti "007", "014", "099")
refid string Nomor Serial Number (SN) / nomor referensi dari biller e-wallet (kosong jika transaksi gagal)
Contoh Callback E-Wallet Sukses
{
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001",
  "status": "SUKSES",
  "rc": "000",
  "refid": "0041001380658412"
}
Contoh Callback E-Wallet Gagal
{
  "mitraidtrx": "TRXDANA-1791426306",
  "tujuan": "081380312001",
  "status": "GAGAL",
  "rc": "007",
  "refid": ""
}

Respon yang Wajib Diberikan Server Mitra (HTTP 200 OK):

Setelah menerima payload di atas, endpoint server Anda wajib merespon HTTP status 200 OK dengan format JSON:

{"status": "success", "message": "Callback diterima"}
POST /api/plnprepaid

PLN Prabayar (Token Listrik)

Integrasi pembelian token listrik mendukung 2 tahap (Inquiry lalu Topup) maupun Direct Topup.

1 Tahap 1: Inquiry No Meter / ID Pelanggan PLN

Cek nama pelanggan dan tarif daya sebelum membeli token.

Tabel Parameter Request Inquiry PLN
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai: "inquiry_plnprepaid"
mitraidtrx string Ya ID referensi unik permintaan inquiry
kodeproduk string Ya Kode produk denom yang ingin dibeli, contoh: "PLN20"
tujuan string Ya Nomor meter (11 digit) atau ID Pelanggan (12 digit) PLN
Contoh Request Inquiry PLN (cURL)
curl -X POST https://api.coresis.id/api/plnprepaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "inquiry_plnprepaid",
    "mitraidtrx": "INQ-PLN-9988",
    "kodeproduk": "PLN20",
    "tujuan": "04193888012"
  }'
Tabel Informasi Parameter Response Inquiry PLN
Field Tipe Keterangan
status boolean true jika inquiry valid, false jika nomor tidak ditemukan
data.meter string Nomor meter pelanggan PLN yang terdaftar
data.nama string Nama resmi pemilik meteran PLN
data.daya string Kategori tarif dan daya listrik (contoh: "R1 /2200 VA")
Contoh Response Inquiry Sukses (HTTP 200)
{
  "status": true,
  "message": "Inquiry Berhasil",
  "data": {
    "meter": "04193888012",
    "nama": "BUDI SANTOSO",
    "daya": "R1 /2200 VA"
  }
}
Contoh Response Inquiry Gagal (HTTP 400)
{
  "status": false,
  "message": "Nomor meter tidak ditemukan / Salah"
}

2 Tahap 2: Eksekusi Pembelian Token

Setelah inquiry sukses, kirimkan permintaan pembelian token menggunakan "type": "topup_plnprepaid" (atau "topup_plnprepaid_direct" jika tanpa tahap 1).

Tabel Parameter Request Pembelian Token
Parameter Tipe Wajib Deskripsi
type string Ya Pilih "topup_plnprepaid" atau "topup_plnprepaid_direct"
mitraidtrx string Ya ID transaksi unik mitra untuk pembelian token
kodeproduk string Ya Kode denom produk PLN, contoh: "PLN20", "PLN50", "PLN100"
tujuan string Ya Nomor meter / ID Pelanggan
Contoh Request Pembelian Token (cURL)
curl -X POST https://api.coresis.id/api/plnprepaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "topup_plnprepaid",
    "mitraidtrx": "TRXPLN-17912345",
    "kodeproduk": "PLN20",
    "tujuan": "04193888012"
  }'
Tabel Informasi Parameter Response Pembelian Token
Field Tipe Keterangan
mitraidtrx string ID transaksi unik mitra
tujuan string Nomor meter yang diisi token
status string Status awal: "PENDING" atau "GAGAL"
Contoh Response Awal (HTTP 200 - PENDING)
{
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012",
  "status": "PENDING"
}
Contoh Response Gagal (HTTP 400)
{
  "status": "GAGAL",
  "rc": "003",
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012"
}

3 Advice / Cek Token PLN (Mendapatkan Struk & Nomor Token 20 Digit)

Digunakan untuk mengambil rincian lengkap token listrik 20 digit, jumlah kWh, biaya admin, dan ID pelanggan.

Tabel Parameter Request Advice Token
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai: "advice"
mitraidtrx string Ya ID transaksi pembelian token yang ingin dicek
Contoh Request Advice Token (cURL)
curl -X POST https://api.coresis.id/api/plnprepaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "advice",
    "mitraidtrx": "TRXPLN-17912345"
  }'
Tabel Informasi Parameter Response Token PLN Sukses
Field Tipe Keterangan
status string "SUKSES" atau "GAGAL"
nomor_token string Kode 20 digit token PLN untuk dimasukkan ke meteran
jumlah_kwh string Total nilai energi listrik kWh yang didapat (misal: "13,4")
rp_token string Rupiah token bersih setelah potongan PJU & materai
tarif_daya string Golongan tarif dan daya listrik pelanggan
Contoh Response Advice Sukses (HTTP 200)
{
  "status": "SUKSES",
  "rc": "000",
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012",
  "nomor_meter": "04193888012",
  "nama_pelanggan": "BUDI SANTOSO",
  "tarif_daya": "R1/2200VA",
  "nomor_token": "4157-4771-2882-0511-2775",
  "rp_token": "19.531,00",
  "jumlah_kwh": "13,4",
  "admin_bank": "0",
  "jumlah_bayar": "20.000"
}
Contoh Response Advice Gagal (HTTP 200 / 404)
{
  "status": "GAGAL",
  "rc": "014",
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012"
}
WEBHOOK / HTTP POST

Callback PLN Prepaid (Notifikasi Otomatis)

Ketika transaksi pembelian Token PLN yang awalnya berstatus PENDING selesai diproses oleh switcher PLN / Biller (menjadi SUKSES atau GAGAL), server Coresis akan secara otomatis mengirimkan notifikasi Webhook via HTTP POST JSON ke URL Callback Mitra lengkap beserta nomor 20 Digit Token dan rincian struk resmi.

Tabel Informasi Parameter Payload Callback PLN Prepaid
Field Tipe Keterangan
mitraidtrx string ID transaksi unik yang Anda kirimkan saat pembelian token
tujuan string Nomor meter atau ID Pelanggan PLN yang diisi
status string Status akhir transaksi: "SUKSES" atau "GAGAL"
rc string Kode status respon ("000" jika sukses, atau kode gagal bila ditolak)
nomor_token string Kode 20 digit token listrik PLN yang dapat langsung dimasukkan ke meteran
nama_pelanggan string Nama resmi pemilik meteran PLN
tarif_daya string Golongan tarif dan batas daya meteran (misal: "R1/2200VA")
jumlah_kwh string Jumlah energi listrik (kWh) yang didapatkan (misal: "13,4")
rp_token string Nilai rupiah token bersih setelah dipotong PPJ / Materai
jumlah_bayar string Total nominal pembayaran token
refid string Nomor referensi / SN pelunasan transaksi dari Biller
no_id_pelanggan string ID Pelanggan 12 digit PLN
Contoh Callback PLN Prepaid Sukses
{
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012",
  "status": "SUKSES",
  "rc": "000",
  "refid": "1494545752561",
  "nomor_meter": "04193888012",
  "nama_pelanggan": "BUDI SANTOSO",
  "tarif_daya": "R1/2200VA",
  "nomor_token": "4157-4771-2882-0511-2775",
  "rp_token": "19.531,00",
  "jumlah_kwh": "13,4",
  "admin_bank": "0",
  "jumlah_bayar": "20.000",
  "no_id_pelanggan": "543103525645"
}
Contoh Callback PLN Prepaid Gagal
{
  "mitraidtrx": "TRXPLN-17912345",
  "tujuan": "04193888012",
  "status": "GAGAL",
  "rc": "014",
  "refid": ""
}

Respon yang Wajib Diberikan Server Mitra (HTTP 200 OK):

Setelah menerima callback di atas, endpoint server Anda wajib merespon HTTP status 200 OK dengan format JSON:

{"status": "success", "message": "Callback diterima"}
POST /api/plnpostpaid

PLN Pascabayar (Tagihan Listrik)

Digunakan untuk mengecek tagihan bulanan pelanggan PLN serta membayarkannya secara aman.

1 Tahap 1: Inquiry Rincian Tagihan Listrik

Mendapatkan jumlah periode bulan tunggakan, daya, tarif, rincian biaya, dan total tagihan.

Tabel Parameter Request Inquiry Tagihan
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai: "inquiry_plnpostpaid"
mitraidtrx string Ya ID transaksi unik permintaan inquiry
kodeproduk string Ya Kode produk PLN Pasca, contoh: "PLNPOST"
tujuan string Ya Nomor ID Pelanggan PLN (12 digit)
Contoh Request Inquiry Tagihan (cURL)
curl -X POST https://api.coresis.id/api/plnpostpaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "inquiry_plnpostpaid",
    "mitraidtrx": "INQPOST-1791001",
    "kodeproduk": "PLNPOST",
    "tujuan": "543103525645"
  }'
Tabel Informasi Parameter Response Inquiry Tagihan
Field Tipe Keterangan
data.nama_pelanggan string Nama resmi pelanggan PLN
data.jml_periode string Banyaknya bulan tunggakan tagihan
data.total_tagihan string Total tagihan akhir yang harus dibayarkan (sudah termasuk admin)
data.rincian array Rincian per bulan: periode, meter awal/akhir, dan admin
Contoh Response Inquiry Sukses (HTTP 200)
{
  "status": true,
  "message": "Inquiry Berhasil",
  "data": {
    "id_pelanggan": "543103525645",
    "nama_pelanggan": "ADI SANTOSO",
    "segmen": "R1",
    "daya": "2200",
    "jml_periode": "1",
    "admin_bank": "2500",
    "total_tagihan": "686635",
    "rincian": [
      {
        "periode_tagihan": "102026",
        "meter_awal": "16162",
        "meter_akhir": "16617",
        "jml_tagihan": "684135",
        "admin": "2500",
        "total_tagihan": "686635"
      }
    ]
  }
}
Contoh Response Inquiry Gagal (HTTP 400)
{
  "status": false,
  "message": "Tagihan telah lunas / ID Pelanggan salah"
}

2 Tahap 2: Pembayaran Tagihan Listrik

Eksekusi pelunasan tagihan. Masukkan parameter nominal sesuai total tagihan dari hasil inquiry tahap 1.

Tabel Parameter Request Pembayaran Tagihan
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai: "payment_plnpostpaid"
mitraidtrx string Ya ID transaksi unik mitra untuk pembayaran
kodeproduk string Ya Kode produk PLN Pasca ("PLNPOST")
tujuan string Ya Nomor ID Pelanggan PLN
nominal number Opsional Jumlah total tagihan dari tahap inquiry (disarankan diisi)
Contoh Request Pembayaran Tagihan (cURL)
curl -X POST https://api.coresis.id/api/plnpostpaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "payment_plnpostpaid",
    "mitraidtrx": "PAYPLN-1791001",
    "kodeproduk": "PLNPOST",
    "tujuan": "543103525645",
    "nominal": 686635
  }'
Tabel Informasi Parameter Response Pembayaran Tagihan
Field Tipe Keterangan
mitraidtrx string ID transaksi mitra
tujuan string ID Pelanggan PLN
status string Status awal: "PENDING" atau "GAGAL"
Contoh Response Awal (HTTP 200 - PENDING)
{
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645",
  "status": "PENDING"
}
Contoh Response Gagal (HTTP 400)
{
  "status": "GAGAL",
  "rc": "003",
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645"
}

3 Advice / Cek Status Pelunasan Tagihan (Lengkap Rincian Resi Struk)

Digunakan untuk mengambil rincian struk pelunasan PLN resmi, nomor referensi switching, dan rincian kwh.

Tabel Parameter Request Advice Tagihan
Parameter Tipe Wajib Deskripsi
type string Ya Wajib bernilai: "advice"
mitraidtrx string Ya ID transaksi pembayaran tagihan yang ingin dicek
Contoh Request Advice Tagihan (cURL)
curl -X POST https://api.coresis.id/api/plnpostpaid \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer TVRSLUIyQi0wMTpSYWhhc2lhMTIz" \
  -d '{
    "type": "advice",
    "mitraidtrx": "PAYPLN-1791001"
  }'
Tabel Informasi Parameter Response Struk PLN Pasca
Field Tipe Keterangan
status string "SUKSES" atau "GAGAL"
refid string Nomor seri / referensi pelunasan dari PLN resmi
no_reff string Nomor referensi pelunasan switching bank
total_tagihan string Nominal total tagihan yang telah lunas terbayar
rincian array Array detail periode, stan meter awal, meter akhir, dan biaya admin
Contoh Response Advice Pelunasan Sukses (HTTP 200)
{
  "status": "SUKSES",
  "rc": "000",
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645",
  "refid": "1OVJ1R30D9AFF903A",
  "jml_periode": "1",
  "id_pelanggan": "543103525645",
  "nama_pelanggan": "ADI SANTOSO",
  "segmen": "R1",
  "daya": "2200",
  "admin_bank": "2500",
  "total_tagihan": "686635",
  "no_reff": "1OVJ1R30D9AFF903A",
  "info": "Informasi Hubungi Call Center 123",
  "rincian": [
    {
      "periode_tagihan": "102026",
      "meter_awal": "16162",
      "meter_akhir": "16617",
      "jml_tagihan": "684135",
      "admin": "2500",
      "total_tagihan": "686635"
    }
  ]
}
Contoh Response Advice Gagal (HTTP 200 / 404)
{
  "status": "GAGAL",
  "rc": "026",
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645"
}
WEBHOOK / HTTP POST

Callback PLN Postpaid (Notifikasi Otomatis)

Ketika transaksi pembayaran tagihan PLN Pascabayar yang awalnya berstatus PENDING selesai diproses oleh switcher PLN / Biller (menjadi SUKSES atau GAGAL), server Coresis akan secara otomatis mengirimkan notifikasi Webhook via HTTP POST JSON ke URL Callback Mitra lengkap beserta nomor referensi resmi pelunasan, ID Pelanggan, dan rincian struk tagihan.

Tabel Informasi Parameter Payload Callback PLN Postpaid
Field Tipe Keterangan
mitraidtrx string ID transaksi unik yang Anda kirimkan saat pembayaran tagihan
tujuan string Nomor ID Pelanggan PLN (12 digit)
status string Status akhir transaksi: "SUKSES" atau "GAGAL"
rc string Kode status respon ("000" jika sukses, atau kode gagal bila ditolak)
refid string Nomor referensi / SN pelunasan resmi dari PLN (kosong bila gagal)
id_pelanggan string Nomor ID Pelanggan 12 digit PLN
nama_pelanggan string Nama resmi pelanggan PLN terdaftar
segmen string Golongan tarif pelanggan (misal: "R1")
daya string Daya terpasang dalam VA (misal: "2200")
jml_periode string Jumlah periode bulan tagihan
jml_periode_bayar string Jumlah periode yang berhasil dibayar
admin_bank string Biaya admin bank per transaksi
total_tagihan string Total nominal tagihan yang dilunasi (termasuk admin)
no_reff string Nomor referensi pelunasan dari switching provider
telp_upj string Nomor kontak Unit Pelayanan Jaringan (UPJ)
info string Informasi / pesan layanan pelanggan dari PLN
rincian array Rincian per periode tagihan: periode_tagihan, meter_awal, meter_akhir, jml_tagihan, admin, total_tagihan
Contoh Callback PLN Postpaid Sukses
{
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645",
  "status": "SUKSES",
  "rc": "000",
  "refid": "1OVJ1R30D9AFF903A",
  "id_pelanggan": "543103525645",
  "nama_pelanggan": "ADI SANTOSO",
  "segmen": "R1",
  "daya": "2200",
  "jml_periode": "1",
  "jml_periode_bayar": "1",
  "admin_bank": "2500",
  "total_tagihan": "686635",
  "no_reff": "1OVJ1R30D9AFF903A",
  "telp_upj": "123",
  "info": "Informasi Hubungi Call Center 123",
  "rincian": [
    {
      "periode_tagihan": "102026",
      "meter_awal": "16162",
      "meter_akhir": "16617",
      "jml_tagihan": "684135",
      "admin": "2500",
      "total_tagihan": "686635"
    }
  ]
}
Contoh Callback PLN Postpaid Gagal
{
  "mitraidtrx": "PAYPLN-1791001",
  "tujuan": "543103525645",
  "status": "GAGAL",
  "rc": "003",
  "refid": ""
}

Respon yang Wajib Diberikan Server Mitra (HTTP 200 OK):

Setelah menerima callback di atas, endpoint server Anda wajib merespon HTTP status 200 OK dengan format JSON:

{"status": "success", "message": "Callback diterima"}

Tabel Kode Respon (Response Code / RC)

Daftar kode status respon standar Coresis beserta rekomendasi penanganannya di sistem Anda.

RC Status Keterangan Tindakan Rekomendasi Mitra
000 SUKSES Transaksi Berhasil. SN / Token telah terbit. Kirim struk / SN ke pelanggan akhir Anda.
030 PENDING Transaksi sedang diproses oleh Biller/Operator. Saldo ditahan sementara. Tunggu Webhook Callback atau lakukan Advice berkala.
001 GAGAL Nomor tujuan tidak valid / salah format (min 10 digit, awalan 08/628). Minta pelanggan memeriksa nomor tujuan kembali.
002 GAGAL Produk sedang gangguan / cut off dari operator. Gunakan produk alternatif atau coba beberapa saat lagi.
003 GAGAL Saldo deposit PPOB Mitra Anda tidak mencukupi. Lakukan Topup Saldo Deposit Mitra Anda.
004 GAGAL Data transaksi tidak ditemukan (pada saat Advice). Pastikan mitraidtrx yang dicek sudah benar.
007 GAGAL Nomor tujuan / ID Pelanggan tidak terdaftar atau tidak ditemukan di sistem Biller (misal: akun E-Wallet belum aktif/terdaftar). Saldo otomatis direfund. Minta pelanggan memeriksa nomor akun tujuan.
014 GAGAL Gangguan koneksi dari Biller / Operator pusat. Saldo otomatis direfund. Coba kembali berkala.
020 SUSPECT Transaksi menggantung / dalam investigasi mendalam oleh Biller. Saldo ditahan sementara. Jangan kirim transaksi ulang. Lakukan Advice berkala atau tunggu Webhook.
023 GAGAL Gagal Biller / Penolakan oleh sistem penyedia (misal: limit saldo penerima E-Wallet tercapai, akun dibekukan, atau gangguan gerbang biller). Saldo otomatis direfund ke deposit Mitra. Coba beberapa saat lagi atau verifikasi limit akun penerima.
026 GAGAL Tagihan sudah terbayar di loket/channel lain atau transaksi ditolak oleh Biller PLN. Saldo otomatis direfund. Cek kembali riwayat tagihan pelanggan.
099 GAGAL Transaksi ditolak atau gagal oleh operator (Nomor hangus, limit bulanan, dll). Saldo otomatis direfund. Jangan ulangi transaksi yang sama.
Teks berhasil disalin!