Trial_period_days: 7 在我的节点函数中似乎无法被识别。知道为什么会出现这种情况吗?我缺少一个变量吗?发布到此时会导致集成错误...
const subscription = await stripe.subscriptions.create({ customer: customer.id, items: [{ price: "price_1KZ3nTGxUje7SlyIDUfIXkr3" }], payment_settings: { payment_method_options: { card: { request_three_d_secure: "any", }, }, payment_method_types: ["card"], save_default_payment_method: "on_subscription", }, trial_period_days: 7, expand: ["latest_invoice.payment_intent"], });
当您创建包含试用版或 100% 优惠券的订阅时,无需立即支付发票。因此,没有 PaymentIntent,也没有 client_secret。这就是您的 PaymentIntent 确认失败的原因。相反,订阅会创建一个SetupIntent来收集将来使用的付款方式。您可以通过
pending_setup_intent.client_secret
属性 访问SetupIntent的客户端密钥(创建订阅时,您需要扩展pending_setup_intent
属性)。然后,您需要在前端确认SetupIntent。要更好地了解 SetupIntents 的工作原理,您可以遵循以下指南:https:// stripe.com/docs/ payments/save-and-reuse?platform=web。