#Ralph - account onboarding
1 messages · Page 1 of 1 (latest)
Essentially, when am I checking charges_enabled vs details_submitted
I can't tell the difference based on this blurb (https://stripe.com/docs/connect/enable-payment-acceptance-guide?platform=web#web-handle-incomplete-onboarding)
A user that is redirected to your return_url might not have completed the onboarding process. Use the /v1/accounts endpoint to retrieve the user’s account and check for charges_enabled.
vs.
You can check the state of the details_submitted parameter on their account to see if they’ve completed the onboarding process.
After some minor testing it seems both are set to true when I've completed onboarding but I may be missing some case where they may differ
For the purposes of these accounts collecting payments, charges_enabled is going to be a good shorthand, but it's possible for that to be true and details_submitted to be false, if, for example, they havent provided a payout bank account yet
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
How could charges_enabled be true if they don't have a payout account setup?
Basically they have other information they need to submit to Stripe, similar to reviewing the requirements hash
And if that's the case, I should just be checking details_submitted to confirm the account is ready to go?
Because if you've provided other required identity information you can collect payments and accrue a balance in Stripe, even if you havent provided a bank account yet to get paid out
Ah OK that's what I was missing I suppose
Right, you can use that if you'd prefer to wait until they've provided all that info, but it isn't strictly necessary
So right now I'm essentially having the clients onboard via an admin panel on our website, storing the account ID, and then as long as I check if details_submitted is good on that page they are good to go
However in the case that details_submitted is false, I should create a new onboarding url for them
?
The user can complete their account activation through a new account link (generated by your integration).
I guess another point of confusion for me is that if I create a new account link, is it not going to override their previous connected account?
Or will Stripe handle that if they enter the same account information as previously
Connect Onboarding handles that -- the user will only need to enter missing information for the account, they won't need to enter everything again
You can try that out in test mode by exiting partway through the flow
Yes once they get to the point of details_submitted any further verification issues would be resolved directly with Stripe
OK I'll do some more testing but I've noticed I've been able to create accounts with the same email but maybe I wasn't far enough in the flow
If you create a new account that's expected, you can re-use eg test@example.com in test mode many times
But for the existing account ID, a new account link should re-enter the onboarding flow where the user left off
Some information requires completing the whole "page" and submitting it to get saved
Ah OK so isntead of this
$redirectURL = $stripe->accountLinks->create(
[
'account' => $account->id,
'refresh_url' => $refreshURL,
'return_url' => $returnURL,
'type' => 'account_onboarding',
]
);
I would use accountLinks->update
OR just create with the same id since I don't see an update in the docs
What you have is fine, yea. Create anew Link using the same account id
Thank you for all your help, greatly appreciate it
No problem at all -- good luck with the rest of your work!