Hello everyone,
I have a wellness app that is live and subscriptions through revenuecat on google and IOS. I am also looking to do b2b sales where i would be billing off app through Stripe and setting the b2b users up in the bubble database. I used a recommendation that someone mentioned last time, i setup a new user data field as b2b_access in the bubble database since bubble/revenuecat setup doesnt just let me flip the users wellness+ or premium upgrade to = yes as it interferes with revenuecat system and payments. So my current setup is if i onboard an organization I upload a CSV spreadsheet to bubble database with email and b2b_access = yes. Do you think this is the best way for me to scale b2b users or do i need another setup? I’m looking for the best setup with least amount of workload and maintenance and ability to scale to lots of users. Do i need something for HR teams to manage themselves or is my current setup tech work and ok?
Please message me if you have any thoughts or advice.
Thank you!
Tom
1 Like
manually uploading CSV files won’t scale well once you start onboarding companies with 20–500 employees. You can keep your current structure, but I’d recommend upgrading the workflow, not the data model.
Create a company datatype
When a company buys a B2B subscription via Stripe Use Stripe Webhooks Bubble Backend Workflow
Create a self-serve portal for HR / Admins
This reduces your workload dramatically.
Admins should be able to:
Upload employees (CSV OR manual add)
Remove employees
See seat usage
Trigger invites
See their billing status (pulled from Stripe)
Also whenever an employee joins via invite or admin upload, Bubble then you can Creates the user, Sets b2b_access = yes, Links the user to the company, Checks seat limits automatically
Hope this helps
You can DM me if any issues arise in the process
Thanks for the detailed suggestions — really helpful for thinking about the long-term.
Just to clarify my current B2B onboarding system:
-
HR sends me a spreadsheet of employee emails
-
I add a b2b_access = yes column
-
I upload that CSV into Bubble all at once
-
Employees then log in using the “Forgot Password” flow to create their password
-
And that’s all the setup required on their side
I used this process for my first small organization (6 employees) and it worked fine, and since companies usually provide their full employee list in a single batch, I’m hoping this won’t create much ongoing maintenance as I grow.
Also just to clarify: My Stripe billing for B2B happens outside the app (organizations pay through Stripe directly), so I’m not using Stripe inside Bubble for seat adjustments or automated billing logic.
My questions are:
-
Is this CSV-based onboarding method fine at my current stage, even if I begin onboarding companies with 50–500 employees?
(Bubble seems to handle bulk CSV uploads well, but I want to make sure I’m thinking about scalability correctly.)
-
Are the more advanced systems you mentioned (company datatype, self-serve admin portal, Stripe webhooks, automated invites, seat usage dashboards, etc.) mainly something to consider later on—once I have many organizations or more frequent employee changes?
-
In your experience, can my current CSV upload + forgot-password flow scale to larger companies for now, without needing to implement those more advanced features yet?
Thanks again — really appreciate the guidance.
Your current setup works for very small batches, but it won’t scale once you start adding companies with dozens or hundreds of employees.
The cleanest long-term structure is:
1. Create a Company datatype
Store plan type, seat count, Stripe customer ID, etc.
2. Use Stripe webhooks for B2B subscriptions
When a company buys a plan → Bubble backend workflow → create/update the Company record.
3. Add a simple admin portal (HR dashboard)
Let admins:
-
upload a CSV
-
add/remove employees
-
trigger invites
-
see seat usage
-
manage access
When an employee is added, Bubble automatically:
This gives you a scalable setup without changing your core product.
I get where you are coming from
I will answer all your questions your questions soon
To answer your first question
Yes, for your current stage, CSV-based onboarding is totally fine even for companies with 50–500 employees as long as:
-
You’re not onboarding new companies every day at that scale
-
Employee lists don’t change multiple times per week
You have a clean process:
-
Template CSV you give to HR
-
You validate the file (spot-check emails, duplicates)
-
You have a way to re-upload without creating duplicate users (e.g. matching on email)
Bubble handles bulk CSV imports well technically.
For the second question
In my experience as a bubble developer Those advanced things Company datatype + relationships, Self-serve admin portal for HR, Stripe webhooks for automatic provisioning, Automated invites + seat usage dashboards
…are mostly Phase 2 / Phase 3 problems that become worth it later on when: You have multiple organizations and They’re changing staff often (new hires, leavers, role changes) and
You don’t want to spend too much time doing:
manual CSV upload, fixing mistakes, answering “Can you add/remove this person?” emails
You don’t need all of that just to serve A few companies eveen if they each have 50–500 employees As long as staff changes are relatively rare or batched
So yes, we treat the advanced system as your roadmap, not a blocker.
And for the third question
The Short answer: Yes, it can scale for now.
Hi, thanks so much for the clarification - this really helps and gives me ease of mind knowing my setup can work for now.
Just one last question so I can plan correctly:
If I needed to upload a CSV with 200–500 employees at once, is there any practical limit in Bubble on how many users I can import in one batch? Or should my current CSV flow handle that size without issues?
Thanks again - I really appreciate your guidance.
Yes, importing 200–500 users in one CSV batch is perfectly fine.
Bubble can handle that size without any issues as long as the CSV is clean and the workflows is not too heavy.