Reading list Switch to dark mode

    Odoo SaaS Kit User Manual – How to Use

    Updated 19 January 2024

    Just Purchase Odoo SaaS Kit, and get the extras for free!

    1) Odoo Saas Custom Plans

    2) Saas Kit Trial in Odoo

    3) Odoo Saas Kit Backup

    4) One-Time Module Installation & Setup

    Searching for an experienced
    Odoo Company ?
    Find out More

    WHAT IS Odoo Saas Kit All in One?

    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 of implementing the Odoo As A Service, we would provide a 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.

    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. Customers can also check the details of the SaaS plans and SaaS contracts from their Odoo website account.

    Also, Read Odoo SAAS Kit Technical FAQs To know further about other functionalities.

    FEATURES

    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. Therefore, 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.
    • Admin can create various subscription plans with the featured modules and publish them on the website for the customers.
    • However, 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.
    • Login details are 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.
    • Moreover, the customer can also 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.
    • Another feature is, that 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]

    WORKFLOW

    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 New.

    module1

    3.) Now, enter the Module name, and technical name of the module and choose the Module Type.

    If the Module type is ‘Custom module’ then you need to mention the path where your custom addon is placed on the server.

    In case of ‘Core Module’,you do not need to mention any path.

    You can also set a module category for internal reference.

    module2

    4.) Now, go to module categories under configuration. You can sort out the modules with the help of these categories.

    module-category

    5.) Create different module categories and then assign modules to them.

    Configuring Your SaaS Server

    6.) Go to Configuration >> Saas Server to configure and integrate your SaaS server with Odoo. Once, done then click on the New button.

    saasserver1

    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 the Instance type as Containerized Instance.

    server-type

    9.) Under Database Server Details Title; fill in your Postgres details i.e. Database Host, port, username, or password.

    server3

    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.

    server4

    Choosing Type Of server Hosting: Self (Same Server) or Remote

    12.) The module allows you to choose whether you wish to install the client instance (data) on the same server on which you have installed Odoo SaaS kit 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.
    server5
    • Remote server: Choose hosted if you want to maintain the clients you make with Odoo SaaS kit on a different server than on which you have installed Odoo Sass Kit All in One. To connect to a Remote server you would need SSH details.
    • SSH Details of Remote server type: If you Choose Remote Server then fill in the SSH details of the same. Fill in the SFTP Host, Port, Username, and Password.
    server6

    13.) Test the connection to validate it automatically; Click confirm. Moreover, you can also edit anything after saving it, 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 New.

    saasplan1

    15.) Here enter the name of the plan.

    16.) Then choose the SaaS server from the list. You can create Saas plans only on the server on which you have installed Odoo Saas Kit. Only the created SaaS servers in the configuration are available in the list.

    saasplan2

    In this demo, we have added another feature where you can choose the odoo version while creating the SAAS plan and can create SAAS plan for different versions –

    saasplan3-1

    Note – You need to configure the odoo version in the saas configurations.

    odoo-version

    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 remote server.

    18.) If you want to deploy the clients on the same server as the plan, leave the setting – ‘Deploy Clients on Remote Server unchecked.

    19.) If you want to deploy the client on a remote server tick the checkbox to enable the setting.

    saasplan4

    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.

    saasplan5

    21.) Next, set their priority and Odoo will automatically pick the server according to space and priority to create a client. (Note: 1 is the highest priority.)

    saasplan6-1

    (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.

    saasplan7

    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.

    saasplan8

    26.) For User-based billing, if the billing frequency is more than one month, you can use Due User pricing. (Optional)

    saasplan9

    27.) Then under product for user calculation, choose a product from the list.

    saasplan10

    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.

    saasplan11

    READ MORE
    What is User-Based pricing? And what is the 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 Work

    • 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 the Due user’s 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 from April 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 on the list.
    • Do not enter any price of the product. Click Save.
    userpricing
    • Now, while buying the SaaS plan from the website, if the customer chooses a plan that has user-based pricing, the product for user calculation will add the number of users chosen by the customer.
    • The total price of the number of users is added to the plan price in the order lines of the cart at the time of checkout to manage customer billing in the order.

    29.) Now under Related Modules, add the Odoo modules that will be part of this plan, the client purchasing the plan will be able to use these modules in his/her Odoo Instance.

    Modules1

    30.) Only those modules which are added under the module in configuration show up here in the list.

    Modules2

    31.) Next enter the SaaS domain (base Url). Same as a domain in server configuration. Click Save.

    saasdomain

    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 in the other details of the plan and click save.

    Screenshot21

    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 gets 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, log in to the Base DB template of the plan.

    login

    37.) Go to Users. Now create a new user with desired access rights and copy the ID of the user from the URL.

    Screenshot2
    userid

    38.) Next go to the plan, tick the checkbox next to Use Specific User Template. Then, enter the user ID.

    userid2

    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 associate it with the SaaS plan and manage plan pricing.

    40.) Go to sales >> products >> create. Choose the Product Type as a Service. Set the price and other details.

    product1

    41.) Now under Saas tab, Attach the desired SaaS Plan to the product.

    Product2

    42.) The product will now become visible in the plan.

    Product3

    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.

    Screenshot27

    45.) Create attributes and their values.
    For example; Type of subscription As attribute and 3months and 6months as their values. Click Save.

    Screenshot28

    46.) Now go to product variants. Open the product variant.

    Screenshot29

    47.) Under Tab – SaaS, set the billing cycle frequency. Click Save

    Screenshot30

    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 in the details.

    contract1

    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).

    contract2-1

    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)

    contract3

    56.) If user-based pricing is used then you can see the calculation of the contract price.

    57.) Click on ‘Create’ to create a new contract. Next, you need to create a SaaS client for this Contract.


    What is an 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 is only 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 the contract and open the contract form.

    contract4

     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.

    contract5
    • 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.
    contract6
    • Once the customer chooses the domain and submits the form, a token is generated in Odoo.
    contract7
    • 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.

    clientinstance1png

    63.) The customer receives an automatic confirmation mail along with the credentials and reset password link.

    clientinstance2

    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.)
    Screenshot40

    69.) Now set the quantity of the product. To set the number of cycles you wish to purchase.

    • For Example, 3 quantities of a 3-month subscription means your plan will run for 9 months.
    Screenshot41

    70.) If user-based pricing is enabled for the plan, you can choose the number of users you wish to buy.

    Screenshot42
    Screenshot43

    71.) Go to the 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?)

    Screenshot44

    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.

    oie_2BuZNbplKzX3

    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.

    contract7-1

    75.) The client receives another mail to set the password for his Odoo Saas instance.

    clientinstance2-1

    76.) Once set, the customer can log in to his/her domain and use it.

    77.) The contract is auto-confirmed and a client is automatically created for the customer in the Odoo backend.

    Login to Odoo as A Saas Client

    78.) The Saas client needs to click on the link received in the mail to set up a password and log in to their Odoo Server.

    1-1

    79.) Here, you can check the apps added to the Saas Plan of the client. Moreover, the client can see the Apps and Settings based on the access rights given.

    test_for_client_1.odoo-saas.webkul.com_web_dbtest_for_client_1.odoo-saas.webkul.comtoken9ShpKKoRzXfZj4bKlT7s


    80.) The Saas Client needs to manually mail the admin for Saas Plan Renewal. Once, the SAAS client has paid the invoice and it is marked paid in the backend then SAAS Plan will be renewed.

    Need Help?

    Hope you find the User Guide of Odoo Saas Kit All in One helpful! Please feel free to share your feedback in the comments below.

    However, if you still have any issues/queries regarding the module then please raise a ticket at https://webkul.uvdesk.com/en/customer/create-ticket/

    For any doubt contact us at [email protected].

    Thanks for paying attention!!

    🙂 😌

    Current Product Version - 1.0.1

    Supported Framework Version - Odoo V17, V16, V15, V14, V13

    Blog Version - Odoo V17, V16, V15, V14, V13
    • Version Odoo V17, V16, V15, V14, V13
    • Version Odoo V15, V14, V13, V12, V11
    . . .

    Leave a Comment

    Your email address will not be published. Required fields are marked*


    16 comments

  • kaka
    • Anisha Bahukhandi (Moderator)
  • kiti
    • Anisha Bahukhandi (Moderator)
      • Ken Tan
        • Anisha Bahukhandi (Moderator)
  • Saini
    • Anisha Bahukhandi (Moderator)
  • Lucas
    • Vikram Saini (Moderator)
  • Mounir
    • Vikram Saini (Moderator)
  • Prado
    • Vikram Saini (Moderator)
  • INNOVING
    • Vikram Saini (Moderator)
  • Back to Top

    Message Sent!

    If you have more details or questions, you can reply to the received confirmation email.

    Back to Home

    Table of Content