#shpatak-connect-onboarding
1 messages · Page 1 of 1 (latest)
HI 👋 what actions are you taking to encounter that error?
I am trying to google it but there is few information
So these are my actions:
- I have an user in my DB
- create stripe customer for each of them
- create customer bank account with customer.id for each of them with this source: source: {
currency: 'USD',
object: 'bank_account',
country: 'US',
accountNumber: '000123456789',
routingNumber: '110000000',
account_holder_name: "John Doe",
account_holder_type: 'individual',
}
- create an payout to bank.id created previously with this payload: {
currency: 'USD',
destination: bankId,
amount: amount * 100,}
on creating payout I get the error from above
That's expected, funds cannot be paid out to a Customer bank account. Payouts can only be made to your bank account that is associated with your Stripe account.
Hm
Then how am I supposed to payout my application merchant's revenue?
To his bank account
That's what Stripe Connect is for.
Your Platform will create a Stripe account for each of your merchants, and then you'll transfer funds to those Stripe account balances.
Okay, so being that said
1 step remains as it is
2 step: I need to create an Stripe Account (type: custom) using this endpoint: https://stripe.com/docs/api/accounts/create
So far so good though you may also want to check in to using Express connect accounts. Custom connect accounts take a lot more development resources. Because they don't come with things like a Dashboard, you would/will need to build out all of the Dashboard functionality yourself
3 step: initiate a transfer to destination account: https://stripe.com/docs/api/transfers/create
is that right?
Not sure if you are including it in step 2, but you also need to onboard the connected account
By step 2 I mean an ui form where user includes all his banking data: routing number, currency, account number, street, name, address and country
I know that Express type is responsible for onboarding the user using stripe web page
We actually include that in the onboarding account links if you want to use those. https://stripe.com/docs/connect/connect-onboarding
You need to collect more info than just the bank account routing number to enable an account for payouts
You can do it with either, just suggesting it because it takes a lot of work off your hands. You can definitely do your own custom onboarding process. Let me check if we have a doc more tailored to that
Doesn't look like there is a doc specifically on it. Basically you would determine the info to collect like in the first step of that doc https://stripe.com/docs/connect/connect-onboarding#info-to-collect
Then you build the functionality to collect that info client side and add it to the account object via update calls
Okay, let say I move on with Express account type
Here in the onboarding there is fields such as Legal business name **Doing business as ** BUsiness website
My regular user may not rule a business or legal entity
Would it be appropriate for you to pass business_type=individual? That is for situations like Lyft where your users are individual people rather than companies https://stripe.com/docs/api/accounts/object#account_object-business_type
And thus won't require things that people don't typically have
Thank you, you are right
but here is only United State country to select
What if I am from European/Asian country
Those are also possible. I am trying to remember what restricts that selection like that. Looking for that and will get back to you
Okay
Can you send me the code for how you are created that accounts? Could be helpful for me to see the settings here
Apologies for the delay. I forgot that there are settings in your dashboard for what countries connect accounts are enabled in https://dashboard.stripe.com/test/settings/connect/express
If you enable those countries there, they should show up in your dropdown