Transaction

Balance Topup Request

Buat dan pantau pengajuan topup saldo customer mitra.

Terakhir diperbarui: 25 September 2026.

Balance Topup Request digunakan untuk menampilkan rekening tujuan topup, membuat pengajuan topup saldo, dan memantau status pengajuan. Flow ini cocok untuk mitra yang ingin menyediakan pengisian saldo dengan transfer bank manual dan verifikasi admin Miharogames.

Semua endpoint pada halaman ini menggunakan header berikut.

Authorization: Bearer o8coocg8k0ss4wcgk0o8........
X-SECRET-KEY: {partner_secret_key}

List Topup Bank

GET /client/v2/balance-topup/banks
Authorization: Bearer o8coocg8k0ss4wcgk0o8........
X-SECRET-KEY: {partner_secret_key}

Endpoint ini mengembalikan rekening bank aktif yang dapat digunakan untuk pengajuan topup saldo.

Success Response

{
  "status": true,
  "data": [
    {
      "bank_account_id": 5,
      "bank_id": 7,
      "bank_name": "BANK BCA",
      "bank_code": "014",
      "account_number": "7860099939",
      "account_name": "PT Mitra Distribusi Utama",
      "payment_guides": [
        {
          "channel": "m-BCA (BCA Mobile)",
          "steps": [
            "Buka aplikasi BCA Mobile, lalu pilih m-BCA.",
            "Pilih menu m-Transfer, kemudian pilih Antar Rekening."
          ]
        }
      ]
    }
  ],
  "message": "OK"
}

Gunakan bank_account_id sebagai input saat membuat pengajuan topup saldo.

Submit Topup Request

POST /client/v2/balance-topup/request
Authorization: Bearer o8coocg8k0ss4wcgk0o8........
X-SECRET-KEY: {partner_secret_key}
Content-Type: application/json

Body

{
  "nominal": 10000,
  "bank_account_id": 5
}
FieldWajibKeterangan
nominalYaNominal topup. Harus integer murni, minimal 10000, maksimal 50000000.
bank_account_idYaID rekening dari endpoint GET /client/v2/balance-topup/banks.

Sistem menambahkan unique_code agar nominal transfer dapat dibedakan dari pengajuan lain. Customer wajib transfer sesuai total_transfer.

Success Response

{
  "status": true,
  "data": {
    "id": 5,
    "request_code": "BTU/KFI/IX/2026/4",
    "nominal": 10000,
    "unique_code": 577,
    "total_transfer": 10577,
    "status": "pending",
    "expired_at": "2026-09-25 13:01:17",
    "bank_destination": {
      "bank_account_id": 5,
      "bank_id": 7,
      "bank_name": "BANK BCA",
      "bank_code": "014",
      "account_number": "7860099939",
      "account_name": "PT Mitra Distribusi Utama"
    },
    "payment_guides": [],
    "admin_confirmation": {
      "whatsapp_number": "6281234567890",
      "message_text": "Halo Admin Miharogames,...",
      "chat_url": "https://wa.me/6281234567890?text=..."
    }
  },
  "message": "Pengajuan topup saldo berhasil dibuat. Silakan transfer tepat sesuai total nominal yang ditentukan sebelum batas waktu."
}

Topup Request History

GET /client/v2/balance-topup/requests?status=all&search=&page=1&pageSize=25&startDate=2026-09-01&endDate=2026-09-25
Authorization: Bearer o8coocg8k0ss4wcgk0o8........
X-SECRET-KEY: {partner_secret_key}

Query

QueryWajibKeterangan
statusTidakFilter status pengajuan. Default all.
searchTidakCari berdasarkan kode pengajuan, status, alasan tolak, nama bank, nomor rekening, atau nama rekening.
startDateTidakTanggal awal format YYYY-MM-DD.
endDateTidakTanggal akhir format YYYY-MM-DD.
pageTidakNomor halaman. Default 1.
pageSizeTidakJumlah data per halaman. Default 10, maksimal 100.

Filter tanggal menggunakan tanggal pembuatan pengajuan. Jika menggunakan range, kirim startDate dan endDate bersamaan.

Status Filter

ValueKeterangan
allSemua pengajuan.
pendingPengajuan dibuat dan menunggu transfer/verifikasi.
successPengajuan berhasil diproses menjadi saldo.
expiredPengajuan melewati batas waktu transfer.
failedPengajuan ditolak admin.

Success Response

{
  "status": true,
  "data": [
    {
      "id": 5,
      "request_code": "BTU/KFI/IX/2026/4",
      "nominal": 10000,
      "unique_code": 577,
      "total_transfer": 10577,
      "status": "failed",
      "reject_reason": "Nominal transfer tidak sesuai.",
      "expired_at": "2026-09-25 13:01:17",
      "matched_at": null,
      "created_at": "2026-09-25 12:46:17",
      "bank_destination": {
        "bank_account_id": 5,
        "bank_name": "BANK BCA",
        "account_number": "7860099939",
        "account_name": "PT Mitra Distribusi Utama"
      }
    }
  ],
  "pagination": {
    "total": 1,
    "page": 1,
    "perPage": 25,
    "totalPages": 1
  },
  "message": "OK"
}

Response Codes

HTTPKondisiMessage
200Data berhasil dimuat.OK
201Pengajuan berhasil dibuat.Pengajuan topup saldo berhasil dibuat...
400Nominal, bank account, status, tanggal, atau page size tidak valid.Sesuai field yang gagal divalidasi.
401Secret key/token salah.Akses ditolak..., Token wajib diisi., atau Token tidak valid.
500Gangguan sistem.Daftar bank topup belum dapat dimuat., Riwayat pengajuan topup belum dapat dimuat., atau pesan gangguan sistem.