Why you should build your next SaaS App on OroPlatform

Let me say this right away – OroPlatform is best to build a multi-tenant b2b business app and you will find why in this write-up.

For those who don’t know what OroPlatform is, here is the quick introduction

OroPlatfrom is a Business Application Platform which has a multi-tenant architecture built into it. Just not that, It is Open Source Business Application Platform (BAP) built on top of proven PHP framework – Symfony.  Its frontend architecture is very well built around JQuery & Backbone JS (Chaplin JS to be particular)

With that said, I would further explain why OroPlatform is the best for SaaS Apps – without being too technical.

Before we go into details, let’s answer this trust-based question. Who is already using this OroPlatform? The below screenshot answers your question.

Just to brief things off, OroPlatform is being used by Open source ERP, Open Source Product Management Software, Open Source Support Software, Open Source CRM, Open Source B2B E-commerce System.

Along with all these open source software it is also being used by SaaS-based Human Resource Management Software called HrRoll. This company is based out in Bangalore, India

(Disclaimer: I am not associated with the HrRoll Company in anyways. Of course, I do work on OroPlatform out of Bangalore, India)

Now you have got a reason to read this blog further – isn’t it?

Now let’s get straight to the point of this blog – Why you should use OroPlatform for next Sass app.

Let me run thru the advantages.

Built-In Multi-tenant Architecture

The first big challenge in SaaS application is to build a multi-tenant architecture. This challenge has been addressed in the core of OroPlatform. OroPlatform has Organization implementation. Every record in the database gets stored in association with the organization.

Each of your client company can be one organization in Oro. Also, this platform has organization switcher being implemented which can allow founder of 2 companies switch between organizations with just one logged-in account.

User, Roles & Permission Management System

Next thing which is most required in any B2B SaaS system is a user, roles, permission management system. All this has been built into the platform. In fact, it also takes the consideration of different branches of the organization into permission management equation – It’s called as business units in Oro.

Just not that It has built-in Login system as well. Of course, the registration screen is missing in the implementation. This can be built with little efforts.

Dashboard & Widget System

Any B2B SaaS system wants to show small dashboard as soon as a user login. This has been already built into the platform. A widget Quick LaunchPad is available in the dashboard with default platform installation.

Of course, one has to build the app specific widgets. However good part is there is a very well organized way to build it. Plus your user can drag-drop, re-arrange, remove widgets from dashboard & can also create multiple dashboards. This is why I admire OroPlatform.

Main Menu & User Menu

OroPlatform has menu management system where you can arrange the menu in required order & can also specify how the menu has to appear. It can be horizontal with dropdowns or vertical with pull-left kind of interface.

User menu is being displayed on the top right which includes a way for your user to do personal configurations, manage their account, change password & log-out

History, Favourite, Most Viewed

This is the best part of this platform. There is a quick menu which can help your users to navigate quickly based on screen they had opened previously, screens they have started, screen they view the most.

There is a pin bar implementation which allows the user to pin any screen in the system & navigate to other screens. After some time, they can open the pinned screen & continue from where ever they had left – Their entered data will not be lost.

Search & Shortcut

You also have global search system being implemented into the platform which will search the entry system for a given keyword. You can also constrain the search to a specific entity of your app say candidates or contacts etc.

The shortcut menu allows users to do an activity using shortcuts – Say create a customer, open timesheet etc.

Good User Experience – No Page Refresh

Yep OroPlatform not only have a good amount of built-in features, but it also has a good UI implementation. The page doesn’t refresh when user switches between the screens. Also, this platform comes with many built-in form controls, dialogs, autocomplete dropdowns that make the user experience even better.


Good… But! How can I benefit with respect to my SaaS App?

By now you may have somewhat convinced that OroPlatform is good to give a try – at least explore further.

But wait! I will explain how you can benefit with respect to your SaaS app.

For this, you need to know that platform has Code bundles. Each code bundle is responsible for a specific generic functionality. For example Grid Bundle will help you to display any data in a nice sortable, filterable data grid, similarly, you have UI Bundle, Chart Bundle, Workflow Bundle, Attachment Bundle etc.

You can look at all the available bundles here

While, I will not able to go thru all the bundles here, but will list the bundles which can help you to build your next SaaS app.

Calendar Bundle

Integrates jQuery Full Calendar plugin and provides additional calendar related functionality.

Chart Bundle

Displays different types of charts (like line charts, pie charts, flow charts).

Config Bundle

Helps to maintain configuration/ user preferences setting & show them in configuration trees like UI.

Cron Bundle

You SaaS app always has one or the other background task. This bundle helps you to implement them. Also provides a user interface to keep an eye on their executions.

Dashboard Bundle

Helps you to build your application-specific dashboards & widgets

Data Audit Bundle 

Helps to keep an eye on the data change that happens in your SaaS app.

Data Grid Bundle

Helps to show the data in a nice table in which users can sort, filter the data. They can also add/remove columns as per their convenience. They can also edit the data inside the data grid.

Email Bundle 

Do you SaaS app need to sync with the user’s inbox. This bundle is meant for that purpose. It also has all the UI required to show the emails.

Help Bundle

With this bundle, you can link the help docs of your application that sits outside the app.

Import Export Bundle

Any SaaS app has some amount of import & export. This module is available just to import & export data.

Integration Bundle 

Integration is a must-have feature for SaaS apps these days. The platform gives an abstracted logic to connect your SaaS app with third-party services and applications.

Notification Bundle 

Want to send automated emails from your SaaS app. Use this bundle to send email notifications triggered by specific activity of the user.

Reminder Bundle 

Want to remind the users of something via emails or as a flash message in the application. Then this bundle is right there for you.

Report Bundle 

Reports are must for any serious SaaS application. This bundle will help to build a custom & configurable reports in the application.

Translation Bundle 

Oops! Forgot to say. This platform has a multilingual implementation. This bundle helps you to achieve that.

User Bundle 

This bundle provides user management functionality (authentication, authorization, etc).

Windows Bundle 

Want to show few things in the popup dialog box. Ok. That’s being covered.

Workflow Bundle 

Want to build some kind of workflow stages in your application. Say candidate go thru different stages of interview or and Order go thru different states. Then this bundle helps you to do that. This is very powerful part of OroPlatform.


Well, at last, you may say – how do you know this? Have you experienced them? Well, I am working on this platform for last 1.5 years for a start-up.

Hence, yes. I have experienced it. I am not writing this article just after reading the documentation.

If you want to know more on the technical front, get in touch with me. I am happy to help you.