条纹元素-客户未附加默认卡或卡付款

时间:2020-07-03 06:05:44

标签: php stripe-payments

我正在创建一个简单的结帐应用,该应用将一些订阅实现为产品。我在后端使用PHP的Stripe Elements。

到目前为止,订单流程类似于:

用户填写表单->表单提交到./create-customer.php

./create-customer.phpcustomer-id返回给客户端

然后,将包含产品/数量的数据发送到创建了PaymentIntent的./payment-intent.php

这对于常规的旧PaymentIntent一次性费用有效;但是,当涉及到订阅时,事情显然会有所不同,并且客户需要附加一种付款方式。

使用Stripe Elements,我的印象是我不必触摸卡信息即可避免任何合规性,责任等。

目前,我的“订阅”创建如下:

\Stripe\Subscription::create([
    'customer' => $customer_id,
    'items' => [
        [
            'price' => 'price_1',
            'quantity' => $qty_1,
            'price' => 'price_2',
            'quantity' => $qty_2,
        ],
    ],
]);

这是我的$.post方法,它将数据发送到PaymentIntent文件。

$.post('./payment-intent.php', data, null, "json")
    .done(function(data) {
        clientSecret = data.client_secret;

        stripe.confirmCardPayment(clientSecret, {
            payment_method: {
                card: card,
            }
        }).then(function(result) {
            if (result.error) {
                console.log(result.error.message);
            } else {
                if (result.paymentIntent.status === 'succeeded') {
                    console.log("Payment success.");
                }
            }
        })
    })
    .fail(function(xhr, status, error) {
        console.log("Fail");
    });

卡片信息如何从Element到PHP进行存储?

我已经研究了令牌化,但是这似乎需要传递卡信息服务器端。

谢谢。

0 个答案:

没有答案