Customer1 正在向 Customer2 付款。运行这样的场景。我在Stripe-Connect
中执行了以下步骤:
我可以在Connected account
部分看到已创建的帐户。
从浏览器本身输入测试Legal entity
后验证了该帐户。
创建Charge
对象( Customer1 正在付费),其中还有application_fee
。请求中提到的目标帐户是新生成的Customer2
帐户。
我正在使用Java
API并且它给我一个错误:
Can only apply an application_fee when the request is made on behalf of another account (using an OAuth key, the Stripe-Account header, or the destination parameter).
我尝试在StackOverflow
上进行跟进,似乎我需要创建一个platform account
来启动此类收费。如果是,我如何创建Platform account
?
在扣除Customer1
后,如何帮助我向Customer2
收取费用并将资金转入connect
application_fee
帐户?
这对我来说听起来有点混乱。任何帮助或暗示都会很明显。
答案 0 :(得分:1)
您已在此处拥有平台帐户。这只是用于描述已连接帐户的主帐户(您的)的词。
这里的问题似乎与您创建Charge的方式有关。如果您代表已连接的帐户明确提出该请求,则您只能收取申请费。目前有两种方法可以做到这一点:
由于您使用Custom帐户创建并拥有卖家帐户,因此您应该使用第一种方法。在这种情况下,您甚至不需要支付申请费。相反,您只需决定在创建费用时向连接帐户发送多少内容。这个想法是你收取100美元,你只需要向关联账户发送90美元,这样你自己就可以保留10美元(减去Stripe的费用)。
代码如下所示:
// Create the list of parameters for the charge
Map<String, Object> params = new HashMap<String, Object>();
params.put("amount", 10000); // amount to charge in cents
params.put("currency", "usd");
params.put("source", "tok_visa");
// Decide how what to send to the connected account
Map<String, Object> destinationParams = new HashMap<String, Object>();
destinationParams.put("account", "acct_XXXXX"); // connected account id
destinationParams.put("amount", 9000); // amount to send to the connected account
params.put("destination", destinationParams);
Charge charge = Charge.create(params);