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

React Native应用中如何通过单个Stripe API密钥实现多商家直接收款至银行账户

React Native多商家Stripe直接收款实现方案

要实现单个API密钥下多商家直接收款,核心得用Stripe的**连接账户(Connect Accounts)**功能,以下是具体步骤:

一、给每个商家创建专属连接账户

每个商家对应一个独立的Stripe连接账户,你用自己的平台API密钥创建即可,有两种类型可选:

  • 标准账户(Standard):商家自己注册管理Stripe账户,你只负责发起收款,资金直接到商家账户,适合需要商家自主操作的场景。
  • 自定义账户(Custom):商家不用注册Stripe,由你代管理所有账户操作,资金直接打去商家绑定的银行账户,适合全托管的场景。
    创建时要收集商家的身份、银行账户等必要信息(测试模式用Stripe提供的测试数据就行),创建成功后会得到唯一的account_id,这就是你标识商家的关键ID。

二、通过PaymentSheet发起定向收款

在React Native里用PaymentSheet收款时,必须在后端生成**支付意图(Payment Intent)**时指定商家的account_id:

后端示例(Node.js)

const stripe = require('stripe')('你的平台API密钥');

// 创建支付意图时指定目标商家的account_id
const paymentIntent = await stripe.paymentIntents.create({
  amount: 1000, // 金额单位:分
  currency: 'usd',
  payment_method_types: ['card'],
  transfer_data: {
    destination: '商家的account_id', // 这里填对应商家的连接账户ID
  },
});

// 返回给客户端的PaymentSheet所需参数
res.json({
  paymentIntent: paymentIntent.client_secret,
  ephemeralKey: await stripe.ephemeralKeys.create(
    {customer: '可选的顾客ID'},
    {apiVersion: '2023-10-16'}
  ),
  customer: '可选的顾客ID',
  merchantDisplayName: '商家名称', // 显示在PaymentSheet上的商家名称
});

前端用后端返回的参数初始化PaymentSheet,用户付款后,资金会直接转入指定商家的连接账户,后续商家可自行提现到绑定的银行账户。

三、给商家绑定银行账户

  • 如果是自定义账户,你可以通过API直接帮商家绑定银行账户:
// 为指定连接账户添加银行账户
const externalAccount = await stripe.accounts.createExternalAccount(
  '商家的account_id',
  {
    external_account: {
      object: 'bank_account',
      country: 'US',
      currency: 'usd',
      routing_number: '110000000', // Stripe测试路由号
      account_number: '000123456789', // Stripe测试账户号
    },
  }
);
  • 如果是标准账户,商家自己登录Stripe后台就能绑定银行账户,你不用插手。

四、测试验证

用Stripe提供的测试信用卡(比如4242 4242 4242 4242)发起付款,然后去你的Stripe后台「连接账户」页面,查看对应商家的交易记录和资金到账情况,确认流程正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 10:38:14