使用Stripe API向客户银行账户付款遇权限问题求助(已用createExternalAccount API)
搞定Stripe API权限不足的问题
嘿,这个错误其实很清晰——你手里的Live密钥 sk_live_oj********************** 在 acct_************ 这个账户上,没有调用 createExternalAccount 端点的权限,咱们一步步来修复:
先确认密钥对应的账户
登录Stripe后台,找到acct_************这个账户(不管是主账户还是Connect子账户),一定要确保你操作的是这个账户的权限设置,别跑错账户了。检查并补上所需权限
进入该账户的「API」>「权限」板块(或者团队设置里的权限管理):- 要是你用的是平台账户的密钥操作子账户,得确保平台已经给这个子账户开了
customers.write权限(毕竟createExternalAccount是用来修改客户信息的操作); - 要是直接用的是这个
acct_************账户自己的密钥,那得确认密钥所属的权限组里,包含「创建/修改客户外部账户」的权限——一般是开启Customers分类下的写入权限,或者更精准的payment_methods.write权限(银行账户属于支付方式的一种)。
- 要是你用的是平台账户的密钥操作子账户,得确保平台已经给这个子账户开了
验证权限是否生效
改完权限后,重新发起请求试试。如果还是报错,建议生成一个新的带对应权限的Live密钥替换旧的,有时候旧密钥的权限缓存会慢半拍。额外提醒
如果你是在Connect平台模式下操作(比如作为平台给子账户的客户打款),除了上面的权限,还要确保平台本身有transfers.write权限,而且子账户已经完成了KYC验证——不然就算权限够了,后续打款也可能卡壳。
小补充:
createExternalAccount只是给客户添加上银行账户信息,要是你最终目的是给这个账户打款,之后还要调用Payouts或者TransfersAPI,这些也需要对应的权限,记得一起检查哦!
内容的提问来源于stack exchange,提问作者Davinder Singh mann
相关产品推荐
相关产品推荐

