Menu Dokumentasi
Base URL Server & Otentikasi

Semua request API wajib dikirimkan ke Base URL resmi berikut:

https://www.ppob.duniadigitalsb.my.id/h2h
Sistem Otentikasi: Sertakan parameter apikey (13 Karakter) pada setiap Request (via GET, POST, atau Header X-API-KEY / Authorization: Bearer).
GET / POST /produk.php
Ambil Daftar Produk & Harga

Digunakan untuk mengambil seluruh daftar produk dan harga ter-update.

URL Endpoint
https://www.ppob.duniadigitalsb.my.id/h2h/produk.php?apikey=APIKEY_ANDA
Parameter Request
Parameter Tipe Wajib Keterangan
apikey String YA API Key H2H.
kategori String OPSIONAL Filter kategori (contoh: PULSA, EWALLET). Default: semua.
provider String OPSIONAL Filter provider (contoh: TELKOMSEL, DANA). Default: semua.
Contoh Respon JSON (200 OK)
{
    "status": true,
    "total": 6927,
    "kategori": "semua",
    "provider": "semua",
    "data": [
        {
            "kode": "BYUSP10",
            "name": "Act Perdana ByU 10GB 10 Hari",
            "provider": "CETAK PERDANA BYU",
            "kategori": "CETAK PERDANA",
            "harga": 26200,
            "deskripsi": "Act Perdana ByU 10GB 10 Hari",
            "status": "AKTIF ATAU NONAKTIF ATAU GANGGUAN",
            "icon": ""
        }
    ]
}
GET / POST /global.php
Order Transaksi Regular / PPOB

Digunakan untuk melakukan transaksi reguler seperti Pulsa, Paket Data, Voucher Game, dan E-Money biasa.

URL Endpoint
https://www.ppob.duniadigitalsb.my.id/h2h/global.php?apikey=APIKEY_ANDA&kode_produk=KODE&nomor_tujuan=0878XXX
Parameter Request
Parameter Tipe Wajib Keterangan
apikey String YA API Key.
kode_produk String YA Kode produk dari List Produk (contoh: S5).
nomor_tujuan String YA Nomor HP / ID Tujuan Pelanggan.
Contoh Respon JSON
{
    "status": true,
    "message": "✅ Transaksi sedang diproses.",
    "data": {
        "refid": "H2H8F9A2",
        "kode_produk": "S5",
        "nomor_tujuan": "08875970436",
        "harga": 5350,
        "status": "PENDING",
        "sisa_saldo": 494650
    }
}
// 1. Saldo Tidak Cukup
{ "status": false, "message": "💸 Saldo Anda tidak mencukupi!" }

// 2. API Key Tidak Valid / Salah
{ "status": false, "message": "🚫 Access Denied: API Key tidak valid!" }

// 3. Parameter Wajib Tidak Diisi
{ "status": false, "message": "⚠️ Parameter 'kode_produk' dan 'nomor_tujuan' wajib diisi!" }

// 4. Produk Tidak Ditemukan
{ "status": false, "message": "📦 Kode produk tidak ditemukan!" }

// 5. Transaksi Ganda (Spam protection 10 detik)
{ "status": false, "message": "⚠️ Transaksi Ganda! Tunggu 10 detik untuk beli lagi produk & nomor yang sama." }

// 6. Akun Nonaktif / Banned
{ "status": false, "message": "🚫 Transaksi ditolak: Akun Anda sedang tidak aktif / dibanned!" }
GET / POST /bebas-nominal.php
Order Transaksi Bebas Nominal

Digunakan untuk produk Ewallet bebas nominal dengan jumlah bebas ditentukan pengguna.

URL Endpoint
https://www.ppob.duniadigitalsb.my.id/h2h/bebas-nominal.php?apikey=APIKEY_ANDA&kode_produk=KODE&qty=10000&nomor_tujuan=0878XXX
Parameter Request
Parameter Tipe Wajib Keterangan
apikey String YA API Key unik pengguna.
kode_produk String YA Kode produk bebas nominal (contoh: BYU).
nomor_tujuan String YA Nomor HP / Rekening Tujuan.
qty Numeric YA Nominal yang ingin diisi (Min: 1.000, Max: 1.000.000).
Contoh Respon JSON
{
    "status": true,
    "message": "✅ Transaksi Berhasil diproses.",
    "data": {
        "refid": "H2HN3B7A1",
        "kode_produk": "BYU",
        "nomor_tujuan": "085123456789",
        "qty": 15000,
        "total_bayar": 15100,
        "status": "PENDING",
        "sisa_saldo": 484900
    }
}
// 1. Nominal Di Luar Limit Minimum/Maksimum
{ "status": false, "message": "❌ Nominal transaksi harus antara 1.000 - 1.000.000!" }

// 2. Saldo Tidak Cukup
{ "status": false, "message": "💸 Saldo Anda tidak mencukupi!" }

// 3. API Key Tidak Valid
{ "status": false, "message": "🚫 Access Denied: API Key tidak valid!" }

// 4. Parameter Tidak Lengkap
{ "status": false, "message": "⚠️ Parameter 'kode_produk', 'nomor_tujuan', dan 'qty' wajib diisi!" }

// 5. Transaksi Ganda (10 Detik)
{ "status": false, "message": "⚠️ Transaksi Ganda! Tunggu 10 detik untuk nominal yang sama." }
GET / POST /bayar_pascabayar.php
Pembayaran Tagihan Pascabayar

Digunakan untuk melakukan eksekusi pembayaran tagihan PPOB (PLN Pascabayar, PDAM, BPJS, Telkom, dll).

URL Endpoint
https://www.ppob.duniadigitalsb.my.id/h2h/bayar_pascabayar.php
Parameter Request
Parameter Tipe Wajib Keterangan
apikey String YA API Key unik pengguna.
kode_produk String YA Kode produk tagihan (contoh: PLNPASCA).
nomor_tujuan String YA ID Pelanggan / Nomor Meter / Nomor Kontrak.
total_tagihan Numeric YA Jumlah total nominal tagihan murni dari hasil cek tagihan.
nama_pelanggan String OPSIONAL Nama pemilik tagihan (jika ada).
Contoh Respon JSON
{
    "status": true,
    "message": "✅ Transaksi pembayaran sedang diproses.",
    "data": {
        "refid": "H2HTGH9C20A",
        "kode_produk": "PLNPASCA",
        "nomor_tujuan": "530000123456",
        "nama_pelanggan": "BUDI SANTOSO",
        "total_tagihan": 125000,
        "admin_markup": 100,
        "total_bayar": 125100,
        "status": "PENDING",
        "sisa_saldo": 359800
    }
}
// 1. Parameter Wajib Tidak Diisi
{ "status": false, "message": "⚠️ Parameter 'kode_produk', 'nomor_tujuan', dan 'total_tagihan' wajib diisi!" }

// 2. Saldo Kurang Dari Total Bayar
{ "status": false, "message": "💸 Saldo Anda tidak mencukupi!" }

// 3. API Key Salah / Ditolak
{ "status": false, "message": "🚫 Access Denied: API Key tidak valid!" }

// 4. Transaksi Pembayaran Ganda (10 Detik)
{ "status": false, "message": "⚠️ Transaksi Ganda! Tunggu 10 detik untuk bayar lagi produk & nomor yang sama." }
GET / POST /status.php
Cek Status Final Transaksi

Digunakan untuk mengecek status transaksi terkini (PENDING, SUKSES, atau GAGAL) beserta Serial Number (SN) produk jika sudah sukses.

URL Endpoint
https://www.ppob.duniadigitalsb.my.id/h2h/status.php
Parameter Request
Parameter Tipe Wajib Keterangan
apikey String YA API Key unik pengguna.
refid String YA RefID unik transaksi yang didapat dari respon order (Contoh: H2H8F9A2).
tipe String YA Kategori jenis transaksi: REGULER, PASCABAYAR, atau DENOM.
Contoh Respon Status Transaksi
{
    "status": true,
    "message": "✅ Status transaksi berhasil ditemukan.",
    "data": {
        "refid": "H2H8F9A2",
        "tipe": "REGULER",
        "kode_produk": "S5",
        "nama_produk": "Telkomsel 5.000",
        "nomor_tujuan": "08875970436",
        "total_bayar": 5350,
        "status": "SUKSES",
        "sn": "SN081238491823912"
    }
}
{
    "status": true,
    "message": "✅ Status transaksi berhasil ditemukan.",
    "data": {
        "refid": "H2H8F9A2",
        "tipe": "REGULER",
        "kode_produk": "S5",
        "nama_produk": "Telkomsel 5.000",
        "nomor_tujuan": "08875970436",
        "total_bayar": 5350,
        "status": "PENDING",
        "sn": ""
    }
}
{
    "status": true,
    "message": "✅ Status transaksi berhasil ditemukan.",
    "data": {
        "refid": "H2H8F9A2",
        "tipe": "REGULER",
        "kode_produk": "S5",
        "nama_produk": "Telkomsel 5.000",
        "nomor_tujuan": "08875970436",
        "total_bayar": 5350,
        "status": "GAGAL",
        "sn": "Nomor tujuan salah atau gangguan provider"
    }
}
// 1. RefID Tidak Ditemukan
{ "status": false, "message": "🔍 Transaksi tidak ditemukan!" }

// 2. Parameter Tipe Salah
{ "status": false, "message": "⚠️ Parameter 'tipe' tidak valid! Nilai yang diperbolehkan: REGULER, PASCABAYAR, DENOM" }

// 3. API Key Salah / Ditolak
{ "status": false, "message": "🚫 Access Denied: API Key tidak valid!" }