Nhà phát triển
Widget nhúng
Khách hàng thanh toán mà không rời khỏi tên miền của bạn. Bạn tạo hóa đơn qua API và hiển thị biểu mẫu thanh toán CryBit trên trang của chính bạn.
1. Tạo hóa đơn
Dùng cùng POST /api/v1/payments. Phản hồi luôn chứa confirmation.confirmation_token, bằng với uuid của hóa đơn. Trường confirmation trong yêu cầu là tùy chọn.
2. Tải script và thêm container
HTML
<script src="https://pay.crybit.net/widget.js"></script>
<div id="payment-form"></div>3. Hiển thị biểu mẫu
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())Cửa sổ modal
Nếu trang không có container, hãy mở widget phủ lên website với customization: { modal: true } (hoặc modal: true) và gọi checkout.render() không có tham số.
Tùy chọn và sự kiện
| Tùy chọn | Ý nghĩa |
|---|---|
confirmation_token | Bắt buộc. uuid của hóa đơn (bí danh: uuid, invoice_uuid). |
return_url | Nơi khách hàng đến sau khi thanh toán. |
lang | Ngôn ngữ giao diện; nếu không có thì dùng ngôn ngữ của trình duyệt. |
modal / customization.modal | true để hiển thị pop-up thay vì container. |
error_callback, success_callback | Được gọi khi có lỗi (không có token, không có container) và khi trạng thái chuyển thành paid. |
Sự kiện: ready, status, success, fail, complete, close, error. Phương thức: render(id), on(event, fn), destroy().
Hãy xác nhận đơn hàng bằng webhook hoặc bằng cách đọc trạng thái. Sự kiện của widget chỉ dành cho giao diện người dùng.
FAQ
Tôi có thể thử nghiệm widget không?
Có. Trong merchant thử nghiệm, widget hiển thị nút để đánh dấu hóa đơn đã thanh toán và số dư không được cộng.
