v 14.0 Third Party 6816
Download for v 14.0 Deploy on Odoo.sh Live Preview
Required Apps Invoicing (account)
Website (website)
Lines of code 1733
Technical Name salon_management
Also available in version v 16.0 v 9.0 v 11.0 v 12.0 v 13.0 v 15.0 v 10.0
You bought this module and need support? Click here!
Required Apps Invoicing (account)
Website (website)
Lines of code 1733
Technical Name salon_management
Also available in version v 16.0 v 9.0 v 11.0 v 12.0 v 13.0 v 15.0 v 10.0

Beauty Spa Management

Manage Beauty Spa, Salon etc. easily.


Cybrosys Techno Solutions' Spa Management System envisions in giving a complete new experience to client in availing their spa services. The Spa Management System helps the customer in processing their online booking for spa services. The module comes integrated with Odoo Accounting and Website, offering comprehensive plethora of functions.

One of the significant advantage of using the Spa Management System is that, it offers your customer their booking information via email. The client is equipped with the status of their booking, enhancing the customary experience and brand building of your business.

Key Features

Online booking facility.

Accounting facility.

Customer notification via email.

User interactive dashboard.

Customer can view the available chairs and order details.

Different access levels for users and administrator.

Track the chair user by date




Dashboard view is shown in the below image. Your customer can book the service in two ways, either via direct booking or online booking. The chairs with Black font's denote the ones available for online booking and the White ones for direct booking. From dashboard, one get all information about the chair, whether the particular chair is free or is in currently use. Also one can see the active orders of that chair. If the end user clicks in , it will directly navigate to the active orders of that chair. In case, if the end user want to change the settings of chair, they can just click the settings button in the dashboard.


Chair (Salon -> Chair)

Here you can create and edit details of each chair. You can assign a user to the chair by adding new user to the users tab in the form view of chair(Check the image shown below). The last added user will be turned to the current user of the chair. Using this tab, you can track which user is active on the Chair on a particular date or time


Services ( Salon -> Services).

List of services provided by the Spa. You can create and edit services here.


Salon Orders ( Salon -> Salon Orders).

Here you have all the orders in the Spa


Salon Order Form View (Salon -> Salon Orders -> Form View

Form view of the salon order is shown in the image. You will get the corresponding invoice details of the order by clicking the Invoice button in the upper right side of the form view


Booking (Salon -> Bookings)

Here you can see all the online bookings. You can either approve a booking or reject a booking. In both cases the notification is send to the customer mail address. The approved bookings will be changed to salon orders.


Booking Form View (Salon -> Bookings ->Form View).

Here you can see all existing salon orders on the corresponding date on that chair. After checking the time availability, you can decide to approve/reject the booking


Settings ( Salon -> Configuration -> Settings

Here you can assign the chairs for booking purpose. Only the assigned chairs can be booked by a customer through online. Also you can select the holidays her


Online Booking (Website -> Bookings).

Book appointments form the website.


Check the availability of chair (Website->bookings)

Check availability of chairs from website.

Suggested Products

Our Services

Odoo Customization
Odoo Implementation
Odoo Support
Hire Odoo Developer
Odoo Integration
Odoo Migration
Odoo Consultancy
Odoo Implementation
Odoo Licensing Consultancy

Our Industries


Easily procure and sell your products


Easy configuration and convivial experience


A platform for educational management


Plan, track and schedule your operations

E-commerce & Website

Mobile friendly, awe-inspiring product pages

Service Management

Keep track of services and invoice


Run your bar or restaurant methodically

Hotel Management

An all-inclusive hotel management application

Need Help?

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
There are no ratings yet!
eman jammaa
on 9/21/22, 9:01 AM

Hello I am getting this error when I install it. I think my server need some packages , any help?

The style compilation failed, see the error below. Your recent actions may be the cause, please try reverting the changes you made.

TypeError: sys.print is not a function
at /usr/lib/nodejs/less/bin/lessc:384:25
- /salon_management/static/src/less/salon_dashboard.less

Muhammad Labib
on 5/30/21, 10:01 AM

Getting this error when try to create invoice from salon orders

Odoo Server Error

Traceback (most recent call last):

  File "C:\Program Files\server\odoo\addons\base\models\ir_http.py", line 237, in _dispatch

    result = request.dispatch()

  File "C:\Program Files\server\odoo\http.py", line 683, in dispatch

    result = self._call_function(**self.params)

  File "C:\Program Files\server\odoo\http.py", line 359, in _call_function

    return checked_call(self.db, *args, **kwargs)

  File "C:\Program Files\server\odoo\service\model.py", line 94, in wrapper

    return f(dbname, *args, **kwargs)

  File "C:\Program Files\server\odoo\http.py", line 347, in checked_call

    result = self.endpoint(*a, **kw)

  File "C:\Program Files\server\odoo\http.py", line 912, in _call_

    return self.method(*args, **kw)

  File "C:\Program Files\server\odoo\http.py", line 531, in response_wrap

    response = f(*args, **kw)

  File "C:\Program Files\server\odoo\addons\web\controllers\main.py", line 1368, in call_button

    action = self._call_kw(model, method, args, kwargs)

  File "C:\Program Files\server\odoo\addons\web\controllers\main.py", line 1356, in _call_kw

    return call_kw(request.env[model], method, args, kwargs)

  File "C:\Program Files\server\odoo\api.py", line 396, in call_kw

    result = _call_kw_multi(method, model, args, kwargs)

  File "C:\Program Files\server\odoo\api.py", line 383, in _call_kw_multi

    result = method(recs, *args, **kwargs)

  File "C:\Program Files\server\odoo\addons\salon_management\models\salon_management.py", line 335, in salon_invoice_create

    inv = self.env['account.move'].create(invoice_line)

  File "<decorator-gen-161>", line 2, in create

  File "C:\Program Files\server\odoo\api.py", line 344, in _model_create_multi

    return create(self, [arg])

  File "C:\Program Files\server\odoo\addons\account\models\account_move.py", line 1805, in create

    vals_list = self._move_autocomplete_invoice_lines_create(vals_list)

  File "C:\Program Files\server\odoo\addons\account\models\account_move.py", line 1762, in _move_autocomplete_invoice_lines_create

    move = self_ctx.new(new_vals)

  File "C:\Program Files\server\odoo\models.py", line 5480, in new

    record._update_cache(values, validate=False)

  File "C:\Program Files\server\odoo\models.py", line 5122, in _update_cache

    raise ValueError("Invalid field %r on model %r" % (e.args[0], self._name))


The above exception was the direct cause of the following exception:

Traceback (most recent call last):

  File "C:\Program Files\server\odoo\http.py", line 639, in _handle_exception

    return super(JsonRequest, self)._handle_exception(exception)

  File "C:\Program Files\server\odoo\http.py", line 315, in _handle_exception

    raise exception.with_traceback(None) from new_cause

ValueError: Invalid field 'l10n_in_gst_treatment' on model 'account.move'