如何通过Stripe实现自由职业者平台卖家资金提现至银行账户
Stripe平台向卖家转账提现实现方案
你提到的refund接口是用于将资金原路退回给付款买家的接口,完全不适用于平台给卖家转账的场景,正确的实现方式依赖Stripe官方的Connect产品,这是专门为多商户平台、自由职业交易平台等场景设计的分账、转账、提现解决方案,具体实现流程如下:
1. 卖家端前置配置
每个入驻平台的卖家都需要开通对应的Stripe Connect账户,开户过程中引导卖家完成身份核验,并绑定自己的个人/企业银行账户,Stripe会自动完成银行账户有效性校验。
2. 资金流转可选方案
根据你的平台资金归集规则,可以二选一使用以下两种模式:
- 交易即时分账模式
买家付款时直接将卖家应得资金拆分到对应卖家的Connect账户,无需后续手动转账,示例代码如下(Node.js环境):const paymentIntent = await stripe.paymentIntents.create({ amount: 10000, // 买家总支付金额,单位为对应货币的最小单位(如美元为分) currency: 'usd', transfer_data: { destination: '{{SELLER_CONNECT_ACCOUNT_ID}}', // 目标卖家的Connect账户ID amount: 9000 // 卖家应得金额,剩余部分自动留存为平台佣金 }, }); - 平台归集后手动转账模式
若你需要先将全部交易资金归集到平台主账户,结算时再给卖家转账,可以使用Transfers接口实现从平台余额到卖家Connect账户的划转,示例代码如下:const transfer = await stripe.transfers.create({ amount: 9000, currency: 'usd', destination: '{{SELLER_CONNECT_ACCOUNT_ID}}', transfer_group: 'ORDER_{{对应订单编号}}', // 可选参数,用于对账关联 });
3. 卖家提现到银行卡配置
卖家Connect账户内的余额可通过两种方式提现到绑定的银行卡:
- 自动提现:在Stripe后台配置提现周期(支持日结、周结、月结等),Stripe会自动将账户内可用余额划转至卖家绑定的银行账户,无需额外开发。
- 手动提现:如果要支持卖家在平台内主动发起提现,调用
Payouts接口即可触发转账,示例代码如下:const payout = await stripe.payouts.create( { amount: 9000, currency: 'usd', }, { stripeAccount: '{{SELLER_CONNECT_ACCOUNT_ID}}', } );
注意事项
- 不同注册地区的Stripe账户开通Connect服务的资质要求不同,需要提前确认你的主体所属区域支持该服务。
- 所有金额参数均为对应货币的最小单位,开发时注意精度换算,避免金额错误。
内容的提问来源于stack exchange,提问作者user16718966
相关产品推荐
相关产品推荐

