Developer
Widget tertanam
Pelanggan membayar tanpa meninggalkan domain Anda. Anda membuat invoice lewat API dan menampilkan formulir pembayaran CryBit di halaman Anda sendiri.
1. Buat invoice
Gunakan POST /api/v1/payments yang sama. Respons selalu berisi confirmation.confirmation_token, yang sama dengan uuid invoice. Field confirmation dalam permintaan bersifat opsional.
2. Muat script dan tambahkan container
HTML
<script src="https://pay.crybit.net/widget.js"></script>
<div id="payment-form"></div>3. Tampilkan formulir
JavaScript
const checkout = new CryBitCheckout({
confirmation_token: 'INVOICE-UUID',
return_url: 'https://merchant.example/thanks',
lang: 'en',
error_callback: (err) => console.log(err),
})
checkout.render('payment-form').then(() => { /* the form is shown */ })
checkout.on('success', () => { /* status paid: confirm the order by webhook or GET */ })
checkout.on('fail', () => { /* expired, cancelled or refunded */ })
checkout.on('complete', () => checkout.destroy())Jendela modal
Jika tidak ada container di halaman, buka widget di atas situs dengan customization: { modal: true } (atau modal: true) dan panggil checkout.render() tanpa argumen.
Opsi dan event
| Opsi | Arti |
|---|---|
confirmation_token | Wajib. uuid invoice (alias: uuid, invoice_uuid). |
return_url | Tujuan pelanggan setelah pembayaran. |
lang | Bahasa antarmuka; jika tidak diisi, memakai bahasa browser. |
modal / customization.modal | true untuk pop-up, bukan container. |
error_callback, success_callback | Dipanggil saat terjadi error (tanpa token, tanpa container) dan saat status menjadi paid. |
Event: ready, status, success, fail, complete, close, error. Method: render(id), on(event, fn), destroy().
Konfirmasi pesanan lewat webhook atau dengan membaca status. Event widget hanya untuk antarmuka pengguna.
FAQ
Bisakah saya menguji widget?
Ya. Pada merchant uji coba, widget menampilkan tombol untuk menandai invoice sebagai lunas dan saldo tidak dikreditkan.
