Checkout
Checkout
Terakhir diperbarui: 18 Agustus 2026.
Checkout dipakai sebelum payment agar mitra mendapat estimasi harga final dan pemakaian saldo/koin yang akan dipakai.
Harga checkout mengikuti pengaturan komersial API-to-API milik mitra. Jika konfigurasi harga API belum aktif, API mengembalikan pesan Price plan API mitra belum dikonfigurasi, hubungi tim Miharogames untuk informasi lebih lanjut.
Checkout Detail
GET /client/v2/checkout?product_id=15676&msisdn=082340378657&use_balance=true&use_coin=true
Authorization: Bearer o8coocg8k0ss4wcgk0o8........
X-SECRET-KEY: {partner_secret_key}
Query
| Query | Wajib | Keterangan |
|---|---|---|
product_id | Ya | ID produk dari product list atau product sync. |
msisdn | Ya | Nomor tujuan transaksi. |
use_balance | Tidak | true jika ingin memakai saldo Miharogames. |
use_coin | Tidak | true jika ingin memakai koin. Koin dipakai setelah saldo. |
booking_code | Tidak | Field tambahan untuk produk tertentu. |
inquiry_id | Tidak | Field tambahan untuk produk tertentu. |
Success Response
{
"status": true,
"data": {
"product": {
"id": 15676,
"code": "S20",
"name": "TELKOMSEL REGULER 20.000",
"description": "",
"nominal": "20.000",
"image": {
"operator_logo": "https://dev-asset.miharogames.co.id/uploads/files/m_operator_logo/telkomsel.svg",
"product_icon": null,
"product_banner": null
}
},
"operator": {
"id": 1,
"name": "Telkomsel",
"logo": "https://dev-asset.miharogames.co.id/uploads/files/m_operator_logo/telkomsel.svg"
},
"pricing": {
"base_price": 20000,
"discount": 0,
"service_fee": 0,
"service_fee_type": "rupiah",
"subtotal": 20000,
"total_payment": 0
},
"balance": {
"use_balance": true,
"available": 80000,
"used": 20000
},
"coin": {
"use_coin": true,
"note": "Konversi koin: 2 koin = Rp1.",
"available": 20000,
"available_value": 10000,
"used": 0,
"used_value": 0,
"usage_note": "Transaksi menggunakan saldo penuh karena saldo mencukupi. Koin tidak dipotong."
},
"promotion": {
"applied": null,
"preview": null
},
"inquiry": {
"is_estimate": false,
"is_ppob": false,
"data": null
}
},
"message": "OK"
}
Balance and Coin Rule
Saldo dipakai lebih dulu. Jika saldo cukup untuk membayar penuh, koin tidak dipotong walaupun use_coin=true. Jika saldo tidak cukup, koin dapat dipakai untuk menutup sisa pembayaran.
coin.usage_note hanya tampil saat use_balance=true, use_coin=true, saldo cukup membayar penuh, dan koin tidak terpakai. UI mitra sebaiknya menampilkan aturan ini agar end-user paham bahwa koin tetap aman walaupun opsi koin aktif.
Urutan penggunaan pada checkout dan payment sama: saldo lebih dulu, lalu koin, lalu payment gateway jika masih ada sisa pembayaran.
Response Codes
| HTTP | Kondisi | Message |
|---|---|---|
200 | Checkout berhasil. | OK |
400 | product_id kosong. | product_id wajib diisi. |
400 | msisdn kosong. | msisdn wajib diisi. |
400 | Nomor tujuan tidak valid. | Nomor tujuan tidak valid. Gunakan format nomor Indonesia yang diawali 08 dan terdiri dari 10 sampai 13 digit angka. |
401 | Secret key/token salah. | Akses ditolak..., Token wajib diisi., atau Token tidak valid. |
400 | Produk tidak tersedia. | Produk tidak ditemukan atau belum tersedia. Silakan pilih produk lain. |
500 | Gangguan sistem. | Mengikuti pesan error server. |