首页 文章

条带 - 无法转移到已连接的独立帐户

提问于
浏览
0

我们在其中一个应用程序中使用Stripe支付网关 .

在我们的模型中,我们将拥有客户和条带连接帐户 . 我们将向客户收取某些服务费用,然后定期(每周/每月等)将客户收入的份额转移到关联帐户 . 关联账户持有人是业务合作伙伴 .

我能够成功地使用卡创建客户并在以后使用Stripe java API向他们收费 . 但我在将金额转移到独立的连接帐户方面遇到了问题 .

我通过Stripe文档中的this链接连接到独立帐户 .
连接到独立帐户后,我在我在数据库中存储的响应中收到帐户的条带帐户ID,可发布密钥,令牌等 .
稍后,在尝试将资金转移到此关联帐户时,我获得了例外 .

com.stripe.exception.InvalidRequestException: No such token: pk_test_kXinGPY8H2cyc5vWOQagwkbE;

在转移到关联帐户时,我真的不确定'source'参数的值应该是什么 . 它应该是指先前向客户收取的付款吗?由于将向客户收取多笔付款,并且只有一笔定期转帐到关联帐户,因此我不确定应该从哪些来源获取 .

我的示例代码是,

Stripe.apiKey = "platform account's secret key"
Charge charge = null;
Map<String, Object> chargeParams = new HashMap<String, Object>();
chargeParams.put("amount", 200);
chargeParams.put("currency", "usd");
chargeParams.put("source", "pk_test_kXinGPY8H2cyc5vWOQagwkbE"); //{platform accounts public key}
chargeParams.put("destination", ""acct_18gKXJHZfNFseiFv""); //Connected account's id        
charge = Charge.create(chargeParams);

我只是想知道上面描述的业务场景是否可以通过Stripe网关实现 . 如果是,有人请指出我在上面的示例代码中可能犯的任何错误 . 谢谢 .

EDIT:

因此,在正常情况下,Stripe似乎不允许将资金从一个Stripe帐户转移到其他帐户,而不会将转帐直接与客户收费相关联 . 它允许从一个Stripe帐户转移到其他特殊情况,但要求此类付款的数量不能超过总交易量的10% .

在我们的情况下,我们只需要定期向子商户支付其收入份额,而且它不会向此客户帐户提供信用卡/借记卡详细信息 . 然后,我们可以使用客户的客户帐户将资金转移到独立帐户 .
它应该工作,对吗?

2 回答

  • 1

    Stripe的典型付款流程可分为两个步骤:

    • 客户端,在您的前端代码(HTML JavaScript)中,您使用CheckoutStripe.js(使用可发布的API密钥配置)来收集客户的付款信息并将其转换为令牌 . 创建令牌后,您将其发送到您的服务器 .

    • 服务器端,在您的后端代码中(在您的情况下,在Java中),您实际使用令牌create a charge .

    您的代码中的问题是您使用可发布密钥作为source参数 . 此参数应包含在前端中创建的令牌的ID . 令牌ID是以 "tok_" 开头的字符串,后跟随机字母数字字符 .

    其余代码看起来是正确的,但如果您的平台需要删除事务,则可能需要添加application_fee参数 . 事实上,您的平台将支付Stripe的费用,但由于所有资金都被发送到关联帐户,因此不会从交易中获得任何资金 .

  • 0

    为什么不创建一个与公司目标银行账户相关联的特殊客户,并向他“收取”转账给您的股东?除非您使用条带进行某些审核,否则您只能将其用作渠道 .

相关问题