Stripe账户已开启transfers能力仍报错问题咨询
问题解决思路
核心原因
你遇到的问题大概率是连接账户的transfers能力仅处于「申请中(requested)」状态,并未被Stripe正式激活。创建账户时设置"transfers": {"requested": True}只是提交了能力申请,需要完成账户入驻验证后,Stripe才会激活该能力。
具体解决步骤
1. 确认transfers能力的实际状态
登录Stripe后台,进入「Connect > 账户」,找到对应的Express账户:
- 查看「功能(Capabilities)」板块,确认
transfers的状态是「已激活(Active)」 - 如果状态是「待处理(Pending)」,说明账户未完成必要的身份验证流程,需要引导账户持有人完成入驻信息提交(比如个人身份资料、银行账户信息等),Stripe审核通过后会自动激活该能力
2. 验证账户ID的正确性
检查代码中transfer_data.destination使用的account_id是否为你创建的Express账户ID,而非平台主账户ID。可以通过调用以下API确认账户信息:
account = stripe.Account.retrieve("你的账户ID") print(account.capabilities.transfers)
返回结果中status字段应为active才表示能力已激活。
3. 补充说明
legacy_payments确实已被Stripe弃用,无需尝试添加。Express账户必须完成身份验证才能激活资金转移相关能力,这是Stripe的合规要求。
内容的提问来源于stack exchange,提问作者help for me
相关产品推荐
相关产品推荐

