Here is information about my scenario:
I have made a CRM web application that is build on Wordpress. For each new client that signup, then we today manually need to clone our base web application and give editor access to the new client to a new Wordpress install unique for him. In the sign-up form for the client, then he need to insert the company name - the company name is then used as the first part of the subdomain, ref sign-up process of applications like Pipedrive and Chargebee. We charge our clients a fee per user like Pipedrive. A client can have several users. So it´s like a four tier set-up, Parent applicaton > Child Application -> Client manager -> His Users. (We don´t use Wordpress multi-site, because sometimes we need to create the child sites on seperate servers and Wordpress multi-site would force us to run all applications on the same server). A client can then buy access for new users in his unique application, where he completes an order form and he is then charged a fee per user. As the system is today, then we manually need to clone the application at our hosting provider, set-up the correct subdomain, add the new user with editor role to the new application, add the extra needed users continously to the client application and invoice manually according to active users. Our clients don´t get full access to the Wordpress intallement we set-up for them. Instead we give the manager in the company a “Editor” role instead of an “Admin” role, and normal users receive a lower role. Only the manger with Editor role in the client company should be able to add and remove user for his company.
I´m looking for a system that can help with the following:
Automat the registration process. Automatically push new user signups from our main webpage to the client Wordpress installement (ref Pipedrive.com registration process) and handle changes of users directly on each client Wordpress installement atuomaticelly. Today we use the plugins “WPFront User Role Editor” and “User access manager” to define which pages a user should have access to within the application. When a new user sign-up then we would like that the cloning of the parent application is done automaticelly, and that the child application is set-up with the subdomain matching the company name in the sign-up form, ref sign-up process of Pipedrive. We are open to use third part application to cut development time.
Make the login flow to work so if the user is attempting to login directly from our main webpage instead of in his company application URL, then he will be redirected to the right application URL, ref Pipedrive.com login flow. We are also here open to use third part application to cut development time.
Billing management. We want to use a system that can automate the billing management for us, so we can have the same billing set-up as the Pipedrive application (Ref. billings module and user &permission module in Pipedrive, we want identical set-up).
Today we use MainWP to push plugin updates to all the child applications. Sometimes we do changes in the setup of our parent application (from where we clone the child applications). We want to use a system that can handle that changes we do in the parent application is pushed to all child applications, without deleting/change entries and customizations in form fields that is done in the child applications.