Talemo Docs

Levels of masters

On this page

In many salons the price of a service depends on who does it: a manicure costs $28 with a master, $35 with a top master and $45 with an art director. A level is the label that carries this: "Master", "Top master", "Art director". The business names its levels itself and puts each master on one of them.

A level is not a role and gives no rights: it says nothing about what a person may do in Talemo, only which price list applies to the master. It is a label of the resource a client is booked with (see Masters, places and devices).

Where it shows

  • The section Masters, places and devices, the view of masters: a chip with the level next to the name of each master, and under the list the card Levels with the levels in their order and how many masters stand on each. The "…" next to a level renames it, moves it up or down, or deletes it; Add level makes a new one. In the card of a master the chip Level puts the master on a level or takes it off, and "New level" makes one on the spot.
  • The section Services and prices: a service with different prices for different levels shows the range ("$28 – $45") and the grey note "by level". In the window of a service, under the usual price, the block Price by level has a field for every level; an empty field means the level takes the usual price.
  • The widgets "Price" and "Master" in the app show the same range and the same chip.
  • The history of a master records that his level changed, without saying which.

A business that has no levels sees only the empty card Levels under the list of masters, with a button to add the first level — and only if its role may change resources. The price list, the window of a service and the widgets stay as they were until the first level is made.

What a level is

  • A name of 1 to 60 characters, in the first language the business serves, once in a business, whatever the case. Translations of the name are kept like those of a service name (see Languages of the business): a translation marked stale was made from an older name; changing the first language moves the names of the levels with the other texts.
  • A place among the levels of the business, counted from 0 without gaps: the lowest first. A new level takes the place asked for and moves the rest down; moving a level moves the ones between its old place and the new one; deleting a level closes the gap. A place past the end is the last place.
  • Shared by all branches. A level belongs to the business: "Top master" means the same in every branch.

Masters on levels

  • A master stands on one level or none. Only a master has a level: a place or a device is refused (level.master_only), and the database holds this too.
  • Changing the role of a master to another role takes his level off in the same change. Deactivating a master keeps his level; a deactivated master is not put on another level until he is activated.
  • Deleting a level takes it off the masters who stood on it and deletes the prices set for it — the masters then take the usual price of each service. The window asks for confirmation and says how many masters and how many prices are affected.

Price by level

  • A service has its usual price and, for any level, a price of its own. A level without a price of its own takes the usual one, and so does a master with no level. The price of a master is worked out in one place: the price of his level, if there is one, otherwise the usual price.
  • Prices are decimals in the currency of the branch, with no more digits after the point than the currency has, like the price of a service. A branch without a currency takes no prices (service.currency_required). Changing the currency of a branch keeps the numbers of the prices of levels, as it does for the usual ones.
  • A price can be set in the window of a service with the usual price — one save — or for many services at once ("Top master costs 10 more on everything"). The assistant asks for the second before it changes anything, as for any change of many things at once.
  • The prices follow the field price of a service: a role that may not see the price does not see the prices of levels either, and may not change them.
  • Booking: a new visit takes the price of the master it is booked with — the price of his level, or the usual one — and the finder, the booking page and the assistants name that price (see Finding free time). A visit that is already booked keeps the price it was booked with, also when the master moves to another level.

Who can do it

Looking at the levels is the right to see resources, making, renaming, moving and deleting a level and putting a master on a level is the right to change them. A level is the same in every branch, so making, renaming, moving and deleting one is only for a role of the whole business: a role limited to some branches sees the levels, puts the masters of its branches on a level and sets the prices of its services, but the rest is refused ("Your role in this business doesn't allow this"; role.forbidden), because deleting a level takes the prices of every branch with it. The prices of levels are the prices of services: the right to change services, without the right closed on the price (see Services, prices and currency). Without the Client booking kit there are no levels.

Tools and refusals

  • talemo_list_levels lists the levels of a business in their order: name, name_tr, position and masters, how many masters in work stand on the level. The level of a master is level in talemo_list_resources; the level of a master who can do a service is level_id in fits of talemo_list_services.
  • talemo_create_level takes name and, optionally, name_tr, position and resource_ids. The masters named stand on the new level at once, so "make the level Top master and put Anna on it" is one call. The answer has the level, after — the level before it, null for the first — and moved: each master that moved and the level he came from. Show the person dry_run first when masters move.
  • talemo_update_level renames a level, changes name_tr (a whole map: a language left out loses its translation) or moves it to another position. The answer has the level as it is now and was, its name and place before.
  • talemo_delete_level deletes a level. The answer has the level as it was, the IDs of the masters who stood on it, prices — how many prices went — and services. Ask the person before deleting; dry_run gives these numbers without deleting.
  • talemo_set_resource_level puts a master on a level (level_id) or, with an empty level_id, takes the level off. The answer is the master. The same level again changes nothing.
  • level_prices of talemo_create_service and talemo_update_service sets the prices of one service for levels: a list of level_id and price; an empty price takes the price of the level away, a level left out of the list keeps what it has. talemo_list_services answers level_prices the same way, one entry for every level that has its own price, and gives every master in fits his own price, the price of his level or the usual one: name that price with the master.
  • talemo_set_level_prices sets or takes away the prices of many services of a branch for levels in one call: a list of service_id, level_id and price, at most 500, each pair once. The answer names every pair with the usual price (base) and the price of the level before (before) and after (after). Never make the real call before the person has seen the dry_run and said yes.
  • A name already in the business is refused with status 409, code record.duplicate and params.field name. A master, a level or a service that is not in the business or in the branch is refused with record.reference_missing; a level that does not exist, with not_found. A place or a device on a level is level.master_only (status 422). A deactivated master or service is resource.deactivated or service.deactivated (409). A price that is not a decimal of the currency of the branch, a name that is empty or over 60 characters, and a negative place are request.body_invalid. A role that closes the price of services is refused with role.field_forbidden.

Tools of this topic

Related topics