#margielamadman_api
1 messages · Page 1 of 1 (latest)
👋 Welcome to your new thread!
⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1337164918662631434
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
So to summarize the main isssue is, Users can onboard with stripe, then get returned to my site, user then tries to access the stripe dashboard to see it info etc but cannot. Doesnt make sense since how can u add details if your not even able to access a dashboard
Hi there 👋 it sounds like the accounts aren't completing onboarding though? Since requirements.currently_due isn't empty, and both payouts_enabled and charges_enabled are false.
yea, then how come i able to complete the onboarding process is what i mean
like i enter in all the required info that then redirects me back to my website from the stripe hosted onboarding. so say if there was more info required wouldnt it not let me compelete onboarding? And if there is missing info there no way for a user to go back and access to complete it?
I'm not sure I'm following. Do you have examples of Account objects where you saw this behavior that you can share? Along with the ID of the requests that returned errors, and the contents of the Account's requirements hash when that was encountered?
let me explain better
I've set up Stripe Connect Express for my platform, and users can successfully onboard using the Stripe-hosted flow. However, even after completing all required steps, their accounts don’t have payouts or charges enabled (payouts_enabled: false, charges_enabled: false).
The issue:
Onboarding allows completion even when details are missing. If required info was actually missing, shouldn't it stop onboarding instead of letting users complete it?
I can't access the Express dashboard to fix anything.
When I try generating a login link (stripe.accounts.createLoginLink(accountId)), it fails because the account hasn’t "completed onboarding."
But since onboarding returned me to my site, I assumed it was completed.
I checked account status via API (stripe.accounts.retrieve(accountId)), and it shows:
json
Copy
Edit
{
"id": "acct_1QpREEDC87WIurwK",
"details_submitted": false,
"payouts_enabled": false,
"charges_enabled": false,
"requirements": {
"currently_due": ["individual.verification.document", "external_account"],
"errors": []
}
}
So onboarding wasn’t actually completed, but I have no way to access it again to finish.
What I need help with:
How can I let users re-enter onboarding to fix missing details?
Why does Stripe return users to my site if onboarding isn't actually complete? Shouldn’t it block them from proceeding until all requirements are met?
Is there a way to force onboarding re-entry via API when details_submitted: false?
Can you put that Account ID back? It's hard for me to look at the specifics of what happened without specific object IDs.
Thank you
i can send my functions if that would be any help
Hm, I would have expected to see account.updated Events for that account if the onboarding flow had been accessed and completed, but I'm not seeing any.
So it looks to me like the hosted onboarding flow wasn't accessed and completed.
Yeah, even TOS acceptance is missing for that account, which is handled by the hosted onboarding flow.
here is how its logged in firebase
stripeAccount
(map)
createdAt
February 5, 2025 at 11:38:32 PM UTC-5
(timestamp)
email
"**********@gmail.com"
(string)
lastUpdated
February 5, 2025 at 11:38:32 PM UTC-5
(timestamp)
type
"express"
(string)
"acct_1QpREEDC87WIurwK"
(string)
stripeAccountId
stripeAccountStatus
(map)
chargesEnabled
false
(boolean)
connected
true
(boolean)
detailsSubmitted
false
(boolean)
payoutsEnabled
false
(boolean)
stripeCreatedAt
February 6, 2025 at 4:18:37 AM UTC-5
(timest
That seems odd, how is the lastUpdated timestamp before the Account was created?
so also in my stripe developer sandbox, i am able to see the stripe account that was created in the connect dashboard
I'm not sure I understand what you're trying to show me with your code. As far as I can tell, the Account you shared an ID for did not access the Account Link you created and complete the onboarding process.
just showing my function that handles stipe connectr and the onboarding process
would it be because im testing with in a sandbox
No, based on the Account you shared with me, it's because the Account Link wasn't used to access the Hosted Onboarding flow and complete the onboarding process.
One thing I did notice, is that you use the same URL for both your refresh_url and return_url when creating the Account Link:
https://dashboard.stripe.com/test/logs/req_f6NuSHHSVfmSRi
Do you have a separate function on that page to handle when it's hit from the refresh_url (meant to be used to generate a new Account Link in case the previous one expired) versus when it's hit as a return_url (after the account owner completes the onboarding flow)?
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
i see i do not have it seperated let me change that