You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stripe订阅模式下如何为关联账户设置应用手续费?

解决Stripe订阅模式下关联账户应用手续费的问题

报错原因

Stripe Checkout Session在subscription订阅模式下不支持payment_intent_data参数,该参数仅适用于payment一次性支付模式,这就是你收到报错的直接原因。

如何在订阅中设置关联账户应用手续费

可以为订阅设置应用手续费,但需要换用以下两种正确方式:

方案1:创建价格时预先配置手续费比例

在创建产品的默认价格时,直接指定手续费比例,后续基于该价格创建的所有订阅都会自动应用此设置:

var options = new ProductCreateOptions
{
    Name = "new product",
    DefaultPriceData = new ProductDefaultPriceDataOptions
    {
        UnitAmount = price,
        Currency = "pln",
        // 示例:设置10%的手续费,数值为百分比的整数形式
        ApplicationFeePercent = 10
    },
    Expand = new List<string> { "default_price" }
};
var requestOptions = new RequestOptions
{
    StripeAccount = stripeAccountId,
};
_productService.Create(options, requestOptions);

方案2:创建Checkout Session时为单订阅设置手续费

如果需要针对特定订阅单独配置手续费,可以在Session的SubscriptionData中指定比例,无需使用PaymentIntentData:

var options = new SessionCreateOptions
{
    LineItems = new List<SessionLineItemOptions>
    {
        new SessionLineItemOptions
        {
            Price = "{{PRICE_ID}}",
            Quantity = 1,
        },
    },
    Mode = "subscription",
    SuccessUrl = "https://example.com/success",
    CancelUrl = "https://example.com/cancel",
    SubscriptionData = new SessionSubscriptionDataOptions
    {
        // 示例:设置10%的手续费
        ApplicationFeePercent = 10
    }
};

var requestOptions = new RequestOptions
{
    StripeAccount = "{{CONNECTED_ACCOUNT_ID}}",
};
var service = new SessionService();
Session session = service.Create(options, requestOptions);

补充说明

  • 若需要固定金额的手续费而非比例,需通过发票Webhook实现:在发票生成后,调用API添加固定金额的手续费项。这种方式复杂度较高,仅在特殊场景下推荐使用。
  • 确保你的平台账户与关联账户的Connect配置正确(如使用Standard/Express账户,且已开通手续费相关权限)。

内容的提问来源于stack exchange,提问作者patriczi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 13:45:29