WHAT IS ODOO SAAS KIT?
Odoo SaaS Kit is the stand-alone solution to help you set up Odoo SaaS Service business at your end. It would allow you to sell Odoo As A SaaS service to your clients.
Due to the complexity in implementing the Odoo As A Service, we would provide Free One-Time Installation Set-Up with the purchase of the module. For more info please visit Odoo SaaS Kit
You can then sell these products via Odoo SaaS plans to the clients. The customers can purchase the products and thus the plans from the Odoo website.
The plans would allow the customer to create his/her Odoo instance and use the modules mentioned in the plans for their business.
The Odoo instance would expire once the plan runs its course. The customer can check the details of the SaaS plans and SaaS contracts from his/her Odoo website account.
Also Read Odoo SAAS Kit Technical FAQs For know further about other functionalities.
Here is a concise list of the features of the Odoo SaaS Kit. For a detailed read of the features please Visit Our Store Page
- The module facilitates the user to offer Odoo as SaaS to their clients in the form of instances. You can start your Odoo SaaS service with the module.
- The module provides the structure for the subscription-based service model to the users.
- The admin can sell Odoo and its modules/apps with the Odoo instances as a subscription-based service to his clients.
- The admin can create various subscription plan with the featured modules and publish them on the website for the customers.
- The customers need to purchase the plan to start the subscription.
- The customer is provided with an Odoo instance with all the modules featured in a purchased plan installed in the instance.
- The login details automatically sent to the registered email address of the customer.
- The customer can also login to his/her Odoo SaaS instance from his/her Odoo website account.
- The customer can check the subscription contract details in his/her website account.
- Configure Remote Server With Odoo Saas Kit for your Odoo Saas Service Clients.
- You can choose to deploy your Odoo Saas clients on a remote server instead of the self-hosted server
- For more than one remote server, choose which to use for client creation.
- You can set the list of servers and their priority in each plan.
The module is well tested for compatibility with Ubuntu. For queries regarding compatibility with an OS of your choice please contact us at [email protected]
Adding Odoo Modules To Your Saas Server
1.) Go to SaaS Kit >> Configuration >> Modules.
2.) Here you can add various modules to your Odoo SaaS Server. Click on Create.
3.) Now, enter the name and technical name of the module. You can also set a module category for internal reference,
4.) Now, go to module categories under configuration. The categories are used for internal management only. To sort out the modules.
5.) Create different module categories and assign modules to them.
Configuring Your SaaS server
6.) Go to Configuration >> Saas Server to configure and integrate your SaaS server with Odoo. CLick on Create.
7.) Enter the name for the configuration. Then, enter the domain of the server. This will be used as the base url while creating Plans.
8.) Choose Instance type as Containerized Instance.
9.) Under Database Server Details Title; fill your Postgres details i.e. Database Host, port, username or password.
10.) Next, Choose the maximum number of clients allowed on this server.
11.) The Tab- ‘No.of Clients’ shows the current number of clients currently installed on this server.
Choosing Type Of server Hosting: Self (Same Server) or Remote
12.) The module allows you to choose whether you wish to install client instance (data) on the same server on which Odoo SaaS kit is installed or on a different server to manage your Odoo Saas service.
- Self or Same Server – Choose Self if you want to keep the client instance and the Odoo Saas Kit module on the same server.
- Remote server: Choose hosted if you want that the clients you make with Odoo SaaS kit are maintained on a different server than on which your Odoo Sass Kit is installed. To connect a Remote server you would need SSH details.
- SSH Details of Remote server type: If you Choose Remote Server then fill the SSH details of the same. Fill the SFTP Host, Port, Username, and Password.
13.) Test the connection and it will automatically be validated. Click confirm. If you wish to edit anything after saving, you need to click on set to draft to allow editing.
After Successful Server Configuration; Creating SaaS Plans
14.) Once you configure the module, go to SaaS >> Saas Plans to create new saas plans for clients. Click on Create.
15.) Here enter the name of the plan.
16.) Then choose the SaaS server from the list. You can create Saas plans only on that server on which Odoo Saas Kit is installed. Only the created SaaS servers in the configuration are available in the list.
Choose To Deploy Clients On Self Or Remote Server
17.) Next, you can choose to deploy the Saas clients of this plan on the same on remote server.
18.) If you want to deploy the clients on the same server as the plan, leave the setting – ‘Deploy Client’s on Remote Server‘ unchecked.
19.) If you want to deploy client on remote server tick the checkbox to enable the setting.
20.) If you have enabled it, go to the ‘Remote Servers‘ tab at the bottom and add the servers from the list in the configuration. Click on Add a line to add the available servers for this plan.
21.) Next, set their priority and Odoo will automatically pick the server according to space and priority to create a client. (Note: 1 is highest priority.)
(Note: you can add both Self and Remote servers to the server list.
22.) Next mention the name of the DB template. A DB template is created for each plan to create instances quickly for your clients. (See: Creating A DB template)
23.) Under plan settings, set the frequency of the billing cycle for the plan.
24.) If you wish to use user-based pricing, tick the checkbox and enter the PUPC. (To know more about user-based pricing. (See: What Is user based Pricing?)
25.) Then, enter the minimum and maximum number of users a client can create per contract.
26.) For User-based billing, if the billing frequency is more then one month, you can use Due User pricing. (Optional)
27.) Then under product for user calculation, choose a product from the list.
28.) If User based pricing is not active, the client will only be charged for the price of the plan irrespective of the Odoo users he creates in his Odoo SaaS instances.
What is User-Based pricing? And what is Due User Price?
- Using User Based Pricing you can charge the clients on the basis of users he/she has created in his/her SaaS instance in addition to the normal cost of the plan.
- Use this setting if you wish to charge your clients on the number of users your client creates on his/her Odoo instance.
How Does It Works
- Suppose your client purchases the Odoo Saas Service plan with 5 users and the billing cycle is for 3 months.
- Then for the first five users, he/she creates the price per user will be decided by PUPC (per user per cycle) irrespective of when the user is created.
- Even if the users are less than 5 the client will have to pay for 5 users.
- Say for the cycle of Jan- March, if the client creates a sixth user, on the second month of a cycle then the price of the new user is managed using Due users price per month.
- So the client will be charged for two months for the sixth user i.e. Feb and march.
- But for the billing cycle aril to June. the sixth user will be charged
- Due Users Price is used when the billing cycle frequency is more than 1 month to balance the pricing if the client creates a user in the middle of the billing cycle.
What is Product For User Calculation? (User Cost)
- The field – Product For User Calculation is used to manage the pricing/billing of users for a SaaS plan on the website. You need to create a product in the product variant and assign it here.
How To Create Product For user Calculation
- Go to product variant >> create.
- Tick the checkbox next to the field –‘User Pricing’ to make this a product for user calculation. It would then be available in the list.
- Do not enter any price of the product. Click Save.
- Now, while buying the SaaS plan from the website, if the customer chooses a plan which has user-based pricing, the product for user calculation will add the number of users chosen by the customer.
- The total price of number of users is added to the plan price in the orderlines of the cart at the time of checkout to manage customer billing in the order.
29.) Now under Related Modules, add the Odoo modules which will be part of this plan, the client purchasing the plan will be able to use these modules in his//her Odoo Instance.
30.) Only those modules which are added under the module in configuration show up here in the list.
31.) Next enter the SaaS domain (base Url). Same as domain in server configuration. Click Save.
Creating an Odoo SaaS Base DB template
For each plan, a Base DB template is created which is then used to create the SaaS instance for the clients.
32.) Enter the unique name of the DB template; fill the other details of the plan and click save.
33.) Now click on create DB template to create a Base DB Template.
(note: only click on create DB template when you create a plan for the first time. If you edit the plan and a DB template is already created do not click on this tab again. Instead, click on skip this step.)
34.) The plan is successfully created. Now you can see other options available : contract login, restart etc.
- Login allows you to login into the created DB template. Restart restarts the Odoo instance .
35.) To edit the plan first set it to draft.
Each plan needs to be associated with a SaaS product to manage plan pricing and to publish the plan on the website.
Manage Client Access Rights For Each Plan
By default, the client get the admin rights for their Odoo instance when they purchase the plan. But you can also give specific access rights to your clients of their Odoo instance.
36.) For this, Login to the Base DB template of the plan.
37.) Go to Users. Now create a new user with desired access rights and copy the Id of the user from the url.
38.) Next go to the plan, tick the checkbox next to Use Specific User Template. Then, enter the user id.
39.) Now, all the new clients made from this plan will have access rights of the user with the entered Id.
(Note: The change will be applicable for new clients created by this plan. Already existing clients will not be affected.)
Creating SaaS Products
You need to create a service product in Odoo and associate it with the SaaS plan and manage plan pricing.
40.) Go to sales >> products >> create. Choose the Product Type as Service. Set the price and other details.
41.) Now under Saas tab, Attach the desired SaaS Plan to the product.
42.) The product will now become visible in the plan.
Creating SaaS Product variants
43.) Product variants will be used on the Odoo website to allow customers to choose the billing frequency (months) while buying the plan and for invoice products while creating contracts from the Odoo backend.
44.) Once you create a SaaS product. Click on the variants tab.
45.) Create attributes and their values.
For example; Type of subscription As attribute and 3months and 6months as their values. Click Save.
46.) Now go to product variants. Open the product variant.
47.) Under Tab – SaaS, set the billing cycle frequency. Click Save
48.) The product variant will now be available on the website for customers to choose the type of billing cycle they want to purchase.
Creating SaaS Contract In The Odoo Backend
49.) To create a SaaS contract for a client, go to SaaS Plan >> Open the desired plan and click on create Contract. On the form that pops up, fill the details.
50.) Set billing cycle frequency. The rate of contract per cycle, Per user cost.
51.) Enter the number of maximum users the client can create in his Odoo instance under this contract.
52.) Choose the number of purchase cycles for the contract.
53.) Choose complimentary free days (if any).
54.) Then choose the customer/partner, Invoice Product and purchase date.
55.) After this, choose the invoice product. The product variants of the product associated with the plan will show up in the invoice product. (To know more see Section: What Is Invoice Product)
56.) If user based pricing is used, you can see the calculation of contract price.
57.) Click on create to create a new contract. Next you need to create a SaaS client for this Contract.
What is Invoice product?
The invoice product helps to manage the invoicing of the Contract.
Note the following points:
- While creating a contract from the backend, the invoice product in the backend will only be used to create an order in Odoo.
- Also, the price of the invoice product will not be added while creating a Saas contract in the backend.
- The user will manage the price of the contract from the contract rate field.
After Contract; Creating A SaaS client & SaaS Instance
You need to create a client for every contract.
58.) Now, go to contract and open the contract form.
59.) Click on edit. Under Heading- SaaS Server; Manually set the sub-domain name of the client and click on ‘Create and Confirm Client’ to create the SaaS instance for the client.
60.) OR, you can Click on ‘Ask the customer’ to send a mail to the customer.
- The mail is sent to the registered mail address of the client. He can click on the link and set the unique domain name of his/her choice.
- Once the customer chooses the domain and submits the form, a token is generated in Odoo.
- Click on the token to auto-fill the domain name for the customer. The domain is auto-entered and the contract automatically goes to the confirmed state.
61.) Or, You can also create a custom domain for the client as per the requirement. In this, the base URL is not added to the domain.
62.) Once the contract is confirmed manually or automatically, the Saas instance is created for the client.
63.) The customer receives an automatic confirmation mail along with the credentials and reset password link..
Purchasing SaaS Plan Using Website
64.) Use the above steps to create a contract and client manually in the odoo backend.
65.) The Customers can also purchase the plans directly from the website. Publish the created SaaS products on the website. login as a customer on the Odoo website.
66.) Go to the website >> shop. Click on the Odoo SaaS plan.
67.) Here you can see the Odoo Saas product variants of the plan.
68.) Choose the type of subscription. The customer can choose the variant to set the billing cycle frequency.
- For Example; A 3-Month Subscription means the billing cycle repeats every 3 months. (For more info See Creating Product variants.)
69.) Now set the quantity of the product. To set the number of cycles you wish to purchase.
- For Example 3 quantities of 3-month subscription means your plan will run for 9 months.
70.) If user based pricing is enabled for the plan, you can choose the number of users you wish to buy.
71.) Go to Check-Out page. You can see user cost in the order line. This comes from the User calculation product. (To know more See- What is Product for user calculation?)
72.) Upon order confirmation, the customer receives the first mail on his registered email address asking to set the Domain name for the SaaS instance login.
73.) The customer needs to go to the link and set his/her domain name.
74.) Enter the domain name and click confirm to create his Odoo SaaS instance.
75.) The client receives another mail to set the password for his Odoo Saas instance.
76.) Once set, the customer can log in to his/her domain an use it.
77.) The contract is auto-confirmed and a client is automatically created for the customer in the Odoo backend.
Current Product Version - 1.0.1
Supported Framework Version - ODOO V11