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

Beauty Spa Management

Easy to manage Beauty Spa

Cybrosys Technologies
cybrosys technologies


Cybrosys Techno Solution’s 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.


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.


Go to 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.


Go to Salon --> Services

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

Salon Orders

Go to Salon --> Salon Orders

Here you have all the orders in the Spa.

Salon Order Form View

Go to 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.


Go to 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

Go to 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.


Go to 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 here

Online Booking

Go to Website --> Bookings

Check the availability of Chair

Go to Website --> Bookings

cybrosys technologies

Our Services

Odoo Customization

Odoo Implementation

Odoo Integration

Odoo Support

Hire Odoo Developer

Our Industries

Odoo Industry


Easily procure and sell your products.

Odoo Industry


Plan, track and schedule your operations.

Odoo Industry


Run your bar or restaurant methodical.

Odoo Industry


Easy configuring and convivial selling.

Odoo Industry

E-commerce & Website

Mobile friendly, awe-inspiring product pages.

Odoo Industry

Hotel Management

An all-inclusive hotel management application.

Odoo Industry


A Collaborative platform for educational management.

Odoo Industry

Service Management

Keep track of services and invoice accordingly.

Email us Contact Us Request Customization

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!
why it us not appear in Apps
Ali elgarhi
on 2/13/21, 5:40 AM

Problem during the invoice
Calogero Salvatore Rizzo
on 11/16/20, 8:04 AM

Hi Dear,

I am getting the follow error when I try to invoice the the booking. Could you please help me to solve this?


Odoo Server Error

Traceback (most recent call last):

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\models.py", line 5000, in ensure_one

    _id, = self._ids

ValueError: too many values to unpack (expected 1)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 624, in _handle_exception

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 310, in _handle_exception

    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\tools\pycompat.py", line 14, in reraise

    raise value

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 669, in dispatch

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 350, in _call_function

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\service\model.py", line 94, in wrapper

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 339, in checked_call

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 915, in __call__

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\http.py", line 515, in response_wrap

    response = f(*args, **kw)

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\addons\web\controllers\main.py", line 1326, in call_button

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\addons\web\controllers\main.py", line 1314, in _call_kw

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\api.py", line 387, in call_kw

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\api.py", line 374, in _call_kw_multi

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

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\addons\salon_management\models\salon_management.py", line 305, in salon_invoice_create

    'price_unit': self.order_line.price,

  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\fields.py", line 984, in __get__


  File "C:\Program Files (x86)\Odoo 13.0\server\odoo\models.py", line 5003, in ensure_one

    raise ValueError("Expected singleton: %s" % self)

ValueError: Expected singleton: salon.order.lines(12, 13, 14)


Error on save Salon Order
Paul Bano
on 10/16/20, 1:16 PM


In the menu salon order when trying to confirm a Draft Salon Order appear an error

The operation cannot be completed:
- If you are creating / updating a record: a required field has not been set.
- If you are deleting a record: another model needs the record that is being deleted. If possible, file it instead.
Model: salon.order (salon.order), Camp: Salon (name)