如何在 stripe.js 中添加 paypal 和 google pay 作为客户付款方式

问题描述 投票:0回答:1

在 Rails 应用程序中,我集成了 Stripe API。在前端部分

stripe.js
库被导入并用于保存/删除客户付款方式:

const stripe_key = 'pk_test_xxx';
const stripe = Stripe(stripe_key);

var elements = stripe.elements();
const paymentMethod = elements.create("card", { hidePostalCode: true })

当用户输入有效的卡数据时,我会生成令牌,该令牌发送到 Rails 后端并转发到 Stripe API,以便将其保存为客户付款方式:

 document.getElementById('submitBtn').addEventListener('click', async function(event) {
            event.preventDefault();

            const { token, error } = await stripe.createToken(paymentMethod);

            console.log(token, error)

            fetch('http://localhost:3000/api/v2/payment_methods', {
                method: 'POST',
                headers: {
                    'Content-Type': 'application/json',
                    'Authorization': `Bearer ${bearerToken}`
                },
                body: JSON.stringify({ 
                    token: token.id,
                    is_default_payment_method: document.getElementById('set_as_default').checked
                })
            }).then(function(response) {
                if (response.ok) {
                    // Payment method saved successfully
                } else {
                    // Failed to save payment method
                }
            }).catch(function(error) {
                console.error('Error:', error);
            });
        });  

现在我想知道是否可以添加 paypal 或 google pay 等付款方式。在文档中找不到这些类型https://docs.stripe.com/js/elements_object/create_element?type=card

stripe-payments
1个回答
0
投票

您可以在此处查看卡元素和付款元素之间的比较:https://docs.stripe.com/ payments/ payment-card-element-comparison

Card Element 仅支持接受银行卡,不接受使用钱包的银行卡支付(例如 Apple Pay、Google Pay)。

如果您想接受其他付款方式类型,您应该使用付款元素,它允许您通过一次集成接受多种付款方式。您可以在这里查看指南:

如果您不想使用付款元素,可以考虑将快速结账元素(将钱包显示为付款方式选项)与卡元素集成:https://docs.stripe.com/elements/快速结帐元素/接受付款

此外,令牌是一个遗留 API。令牌不支持许多新功能,例如强客户身份验证(例如 3DS)。您确实应该使用 PaymentMethods。

© www.soinside.com 2019 - 2024. All rights reserved.