集成
嵌入模式
使用声明式按钮或浏览器 API 添加 MakePay 结账。
按钮嵌入
必需属性
声明式集成适合商品页、发票页和静态 CMS 页面。只要能添加脚本标签和按钮标记,就可以使用。
- 使用
data-makepay-payment-link指定要打开的支付 UID。 - 在客户点击支付按钮之前加载弹窗脚本。
- 使用真正的
button或a元素,保证键盘也能访问。
html
<script src="https://cdn.makepay.io/modal/makepay.min.js"></script>
<button type="button" data-makepay-payment-link="YOUR_PAYMENT_UID">
Pay with crypto
</button>浏览器 API
当你的应用自己管理点击处理器,或需要直接传入生命周期回调时,使用全局浏览器 API。
- 使用
window.makepay.showPayment(uid, { onEvent })打开支付弹窗。 - 使用
window.makepay.hide()关闭当前弹窗。
html
<script src="https://cdn.makepay.io/modal/makepay.min.js"></script>
<button type="button" id="pay-with-makepay">Pay with crypto</button>
<script>
document.getElementById("pay-with-makepay").addEventListener("click", function () {
window.makepay.showPayment("YOUR_PAYMENT_UID", {
onEvent: function (event) {
if (event.type === "makepay.payment.redirect_requested" && event.payload.redirectUrl) {
window.location.assign(event.payload.redirectUrl);
}
},
});
});
</script>回调处理
当页面需要响应结账状态变化或重定向请求,但不想在 window 上全局监听时,请传入 onEvent 回调。
适用场景
当商户网站不需要在打开结账前运行自定义 JavaScript 时,使用按钮嵌入。当应用需要自己控制点击、运行时选择参数,或只为单次弹窗处理回调时,使用浏览器 API。