问题
I am working on Ride Sharing app and i choose Stripe
as payment procedure. What happens in app that rider can tip to driver. For this i used this approach that, Rider will pay to the App's stripe
account and then app will keep its percentage and then it will transfer remaining amount to driver's stripe account.
So far everything is going good.App has successfully charged the rider but bit confused about transfering amount to driver's stripe account. I have looked into stripe documentation which says i need driver's stripe account CONNECTED_STRIPE_ACCOUNT_ID
, which i am unable to find and unable to figure out what is it. What is stripe connect account is? how can i add user to stripe connect from android to my platform?
This is the code snippet provided by stripe
Stripe.apiKey = PLATFORM_SECRET_KEY;
Map<String, Object> transferParams = new HashMap<String, Object>();
transferParams.put("amount", 1000);
transferParams.put("currency", "gbp");
transferParams.put("destination", {CONNECTED_STRIPE_ACCOUNT_ID});
Transfer.create(transferParams);
It would be nice if someone explain this to me. Thanks P.s i don't want to use webview
in my app in any case. I am not allowed to use it.
回答1:
There are three different ways to create charges with Connect :
direct charges (i.e. with the Stripe-Account header)
destination charges (i.e. with the destination parameter)
separate charges and transfers (in which you first create a "normal" charge on your platform's account, then create transfers to send funds to the destination accounts)
Which way you should use depends on your exact use case, as it also determines who pays Stripe's fees and who's responsible for refunds and chargebacks. Check out this paragraph to help you decide which way is best suited for your business.
In the first two cases, you'd specify your platform's cut with the application_fee parameter, and the destination account's ID ("acct_..."
) in either the Stripe-Account
header or the destination
parameter.
The account ID should be in your database. If you use standard accounts or Express accounts, then you get it at the end of the OAuth flow, in the stripe_user_id
field. If you use custom accounts, then you get it in the id field in the response to the account creation request. In all cases, you need to save this ID in your database so you can retrieve it to issue API requests and accept payments on behalf of this account.
来源:https://stackoverflow.com/questions/38850331/what-is-connected-stripe-account-id-how-to-get-it-from-android-platform