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

Stripe Connect跨币种支付时获取balance_transaction报错No such balance transaction

问题:使用Stripe BalanceTransactionService获取余额交易时提示“No such balance transaction”

我开发了一款用Stripe结账门户收取服务费的应用,通过API Webhook监听Stripe事件。支付始终以USD结算,但关联的Connect账户使用其他币种(比如GBP)。触发的payment.created事件里包含balance_transaction属性,本来想用它获取货币转换信息,但用.NET的BalanceTransactionService获取该对象时,出现错误:Stripe.StripeException: No such balance transaction。

可能的原因

  • 权限与API密钥问题:使用平台主账户的API密钥访问Connect子账户的余额交易资源,会导致权限不足。balance_transaction属于Connect子账户的专属资源,必须使用子账户的API密钥,或者在调用API时添加Stripe-Account请求头(传入对应子账户的ID)才能正常访问。
  • balance_transaction归属不符预期:当支付以USD结算但关联Connect账户使用GBP时,payment.created事件返回的balance_transaction可能属于平台主账户,而非你需要的Connect子账户。直接用这个ID去查询子账户的余额交易,自然会返回“不存在”的结果。
  • 异步处理延迟:Stripe的余额交易记录可能存在异步生成的延迟,若在Webhook触发后立即调用API获取该记录,此时记录尚未完全创建完成,就会出现找不到资源的错误。
  • 环境不匹配:如果测试环境使用测试密钥,但处理的是生产环境触发的事件,或者生产环境使用生产密钥处理测试事件,跨环境调用API会导致无法找到对应的交易记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 01:27:08