在页面上有一个文本框,客户或付款人在其中输入要通过 Stripe 捐赠给我的金额,作为一次性付款。还有一个复选框“订阅$ 5 / mo”,如果选中,将在之后向他收取该金额。问题是:在任何情况下,它都是一次性付款,并立即收取;自定义金额 - 客户输入的任何内容。而且,(可选)客户将在订阅内自动收取$ 5 / mo的费用,从一个月内开始 - 当且仅当他选中复选框时。我知道如何创建一个会话来向客户收费一次,下面是代码,部分: stripeParams := &stripe.CheckoutSessionParams{ PaymentMethodTypes: stripe.StringSlice([]string{ "card", }), LineItems: []*stripe.CheckoutSessionLineItemParams{ &stripe.CheckoutSessionLineItemParams{ PriceData: &stripe.CheckoutSessionLineItemPriceDataParams{ Currency: stripe.String(string(stripe.CurrencyUSD)), ProductData: &stripe.CheckoutSessionLineItemPriceDataProductDataParams{ Name: stripe.String("test123"), }, UnitAmount: stripe.Int64(amount * 100), }, Quantity: stripe.Int64(1), }, }, Mode: stripe.String(string(stripe.CheckoutSessionModePayment)), //........我将如何实现“在顶部加上$ 5 / mo的订阅”的事情?
1 回答

手掌心
TA贡献1942条经验 获得超3个赞
如果要通过结帐会话创建订阅,则应遵循以下指南:https://stripe.com/docs/billing/subscriptions/checkout
总而言之,如果您想在客户输入的一次性付款金额的基础上添加$ 5订阅,请执行以下操作:
将结帐会话从 更改为 (请参阅 apiref
mode: payment
mode: subscription
)添加您在步骤 1 中创建的价格 ID,并将其添加为结账会话的附加订单项(请参阅 apiref)
设置 (apiref) 或 (apiref),以便在试用期结束之前不会收取定期价格。即使经常性价格处于试用状态,仍将预先收取一次性价格。
subscription_data.trial_end
subscription_data.trial_period_days
如果您不想使用试用版,还可以考虑向会话添加一次性的$ 5折扣。
- 1 回答
- 0 关注
- 273 浏览
添加回答
举报
0/150
提交
取消