Hello there,
I’m looking for examples of open source SaaS applications that have well implemented and well documented where you can have:
- multiple users, who can belong to multiple organisations
- one billing account per organisation
- multiple users allowed to update billing details if they belong to a given organisation
Have you seen any recently like this?
Ideally, you’d have the case that organisations have multiple “projects”, or other entities that anyone in the organisation is able to contribute to as long as they are in a specific team “owned” by the organisation, although this is less of a priority than the first things I’ve listed.
I think the sentry code base is meets these criteria, but I’d welcome suggestions for smaller code bases to read and learn from for implementing yourself.
If there are any django packages that implement this, I’d love to hear about them too - I’ve had a quick look but nothing sprang out at me as obviously the thing to use.
Thanks in advance!
Personally? No. A Google search shows many potential candidates, but I know nothing of any of them.
When we last reviewed what was available (2016), there were no candidates that satisfied our specific requirements to the degree where we would have considered them as viable options.
So we wrote our own. It’s clearly the largest and most technically intricate Django project I’ve ever worked on. (200+ models, > 100,000 LoC)
It’s a complex topic. When you start including “workflows”, “row-level” security, and custom required reports, you quickly leave the realm of there being “smaller code bases to read and learn from”.
If you have anything approaching requirements like ours, you’re not going to find something easy to understand and implement. There are always edge-cases and special conditions that are going to mess things up. So the smaller the base code, the more of those edge-cases you’re going to need to implement yourself.
What’s even more frustrating is that this complexity tends to exist almost regardless of the size of the organization, once you get beyond a certain size. A small company (~ 100 employees) encounter just about as many issues as larger companies (> 50,000 employees).