Node.js 将paymentMethod添加到试用订阅,然后验证信用卡
我正在与react node.js进行条带集成 虽然创建订阅时没有试用,但我没有任何问题,而且所有用例都非常简单 但是,我正在尝试创建免费试用版而不收集信用卡详细信息,稍后试用期到期时,我想收集信用卡详细信息 服务器端:创建不带付款方式的试用订阅:Node.js 将paymentMethod添加到试用订阅,然后验证信用卡,node.js,reactjs,stripe-payments,payment-method,Node.js,Reactjs,Stripe Payments,Payment Method,我正在与react node.js进行条带集成 虽然创建订阅时没有试用,但我没有任何问题,而且所有用例都非常简单 但是,我正在尝试创建免费试用版而不收集信用卡详细信息,稍后试用期到期时,我想收集信用卡详细信息 服务器端:创建不带付款方式的试用订阅: const subscription = await stripe.subscriptions.create({ customer: customer.id, items: [{ price: priceId }], tr
const subscription = await stripe.subscriptions.create({
customer: customer.id,
items: [{ price: priceId }],
trial_end: expiredAt.unix(),
expand: ['latest_invoice.payment_intent'],
});
客户端:试用期结束后,我想收集信用卡详细信息(paymentMethod),检查是否由于失败或3ds而需要用户操作,并通过更新客户的默认付款方式更新订阅:
const updateCustomerDefaultPaymentMethod = await stripe.customers.update(
customerId,
{
invoice_settings: {
default_payment_method: req.body.paymentMethodId,
},
}
);
如何更新订阅以执行paymentIntent或向用户收费,并将状态为“in_complete”的订阅对象返回到客户端,与创建订阅时没有试用期相同?
目前,在运行我的代码时,我一直处于“活动”状态,因为第一张发票处于“已付款”状态,价格为“0$”。在免费试用的情况下,创建订阅不会导致初始付款,Stripe会自动为您创建一个隐藏的帐户。此SetupIntent用于收集客户的付款方式。因此,在,客户需要返回到您的应用程序以输入其信用卡详细信息,然后您可以使用SetupIntent: