Pembayaran dan penarikan/Payment API
Payment API
Buat dan kelola sesi pembayaran kripto dengan 2328.io Payment API.
Payment API memungkinkan Anda membuat sesi pembayaran, mengarahkan pelanggan ke checkout terhosting, dan melacak status pembayaran.
Buat pembayaran
Membuat sesi pembayaran dan mengembalikan URL untuk pelanggan melakukan pembayaran.
Parameter permintaan
| Field | Tipe | Wajib | Deskripsi | Nilai |
|---|---|---|---|---|
amount | decimal | ya | Jumlah pembayaran dalam mata uang tersebut, mis. 100.00 | |
currency | string | ya | Mata uang fiat (USD, EUR, RUB, …) atau kripto (USDT, TRX, BTC, …) | |
order_id | string | ya | ID pesanan Anda, mis. ORDER-12345 (hingga 128 karakter) | |
to_currency | string | tidak | Kripto yang sudah dipilih sebelumnya | |
network | string | tidak* | Kode jaringan (wajib jika to_currency ditetapkan atau currency adalah kripto) | |
url_return | string | tidak | URL pengalihan setelah pembayaran, mis. https://your-site.com/return | |
url_success | string | tidak | Alternatif untuk url_return | |
url_callback | string | tidak | URL untuk notifikasi webhook, mis. https://your-site.com/webhook | |
invite_code | string | tidak | Kode referral | |
fee_split | decimal | tidak | Bagian biaya merchant yang dibebankan ke pembayar, 0–100 (%). 0 = merchant membayar penuh, 100 = pembayar membayar penuh. Mengganti pengaturan tingkat project. Contoh: 30 (pembayar menanggung 30% dari biaya). | |
price_markup | decimal | tidak | Markup atau diskon pada jumlah faktur, −99 hingga 100 (%). Mengganti pengaturan tingkat project. Contoh: 5 (+5%) atau -10 (diskon 10%). | |
description | string | tidak | Deskripsi faktur opsional (maks 200 karakter). Ditampilkan kepada pembayar di halaman pembayaran. Contoh: Premium plan — Order #12345. | |
ttl_seconds | int | tidak | Masa berlaku faktur dalam detik, dari 300 (5 menit) hingga 86400 (24 jam). Setelah periode ini faktur kedaluwarsa dan tidak dapat dibayar lagi. Default: 3600 (1 jam). Contoh: 3600. |
Respon
JSON
{
"state": 0,
"result": {
"uuid": "abc123-def456-...",
"order_id": "ORDER-12345",
"amount": "100.00",
"currency": "USD",
"amount_usd": "100.00",
"exchange_rate": null,
"url": "https://2328.io/pay/abc123-def456-...",
"tg_deeplink": "https://t.me/my2328bot?start=pay_abc123-def456-...",
"expires_at": "2026-01-11T21:00:00Z",
"created_at": "2026-01-11T20:00:00Z",
"payer_currency": "USDT",
"payer_amount": "100.50",
"network": "TRX-TRC20",
"address": "TXYZabc123...",
"payment_status": "check",
"txid": null,
"payment_amount": null,
"qr": "data:image/png;base64,iVBORw0..."
}
}- Arahkan pelanggan ke
result.urluntuk menyelesaikan pembayaran. tg_deeplink— deeplink bot Telegram untuk pembayaran melalui Telegram MiniApp.qr— kode QR berenkode Base64 (data URI) dari alamat deposit. Hadir saat alamat sudah ditetapkan (saatnetworkditetapkan bersama denganto_currency, atau saatcurrencyadalah kripto); jika tidak,null.txid,payment_amount—nullhingga pelanggan membayar. Diisi setelah transaksi terdeteksi on-chain. Dengarkan webhookpayment_status: paiduntuk mengetahui kapan.exchange_rate—nulljika konversi belum berlaku (mis. nilai tukar fiat → kripto belum terkunci). Diisi setelah mata uang pembayar dipilih.
Credentials
curl -X POST https://api.2328.io/api/v1/payment \
-H "Content-Type: application/json" \
-H "User-Agent: MyShop/1.0 (+https://myshop.example)" \
-H "project: YOUR_PROJECT_UUID" \
-H "sign: YOUR_HMAC_SIGNATURE"Click Try it to see the response here.
Info pembayaran
Dapatkan status pembayaran saat ini berdasarkan uuid atau order_id.
Parameter permintaan
| Field | Tipe | Wajib | Deskripsi | Nilai |
|---|---|---|---|---|
uuid | string | ya* | UUID pembayaran (dari result.uuid saat pembuatan) | |
order_id | string | ya* | ID pesanan Anda |
Setidaknya salah satu dari uuid atau order_id wajib diisi.
curl -X POST https://api.2328.io/api/v1/payment/info \
-H "Content-Type: application/json" \
-H "User-Agent: MyShop/1.0 (+https://myshop.example)" \
-H "project: YOUR_PROJECT_UUID" \
-H "sign: YOUR_HMAC_SIGNATURE"Click Try it to see the response here.
Daftar pembayaran
Dapatkan daftar semua pembayaran dengan filter dan paginasi.
Parameter permintaan
| Field | Tipe | Wajib | Deskripsi | Nilai |
|---|---|---|---|---|
status | string | tidak | Filter berdasarkan status pembayaran (lihat References) | |
date_from | date | tidak | Tanggal mulai (YYYY-MM-DD), mis. 2026-01-01 | |
date_to | date | tidak | Tanggal akhir (YYYY-MM-DD), mis. 2026-01-31 | |
page | int | tidak | Nomor halaman, default 1 | |
per_page | int | tidak | Item per halaman, default 15, maks 5000 |
curl -X POST https://api.2328.io/api/v1/payment/list \
-H "Content-Type: application/json" \
-H "User-Agent: MyShop/1.0 (+https://myshop.example)" \
-H "project: YOUR_PROJECT_UUID" \
-H "sign: YOUR_HMAC_SIGNATURE"Click Try it to see the response here.