Skip to content

Commit 16bdc20

Browse files
committed
[ADD] Payroll: New Salary doc
1 parent 2e9b14a commit 16bdc20

12 files changed

+302
-264
lines changed

content/applications/hr/payroll.rst

Lines changed: 2 additions & 264 deletions
Original file line numberDiff line numberDiff line change
@@ -354,270 +354,6 @@ calendar` button in the top-left. This creates entries for an :guilabel:`Even we
354354
:align: center
355355
:alt: New working schedule form.
356356

357-
Salary
358-
======
359-
360-
.. _payroll/structure-types:
361-
362-
Structure types
363-
---------------
364-
365-
In Odoo, structure types are used to identify group of people referring to the same payroll rules.
366-
A structure type contains specific options and a subset of structures that will be used according
367-
the situation.
368-
369-
In Odoo, an employee's payslip is based on *structures* and *structure types*, which both affect how
370-
an employee enters timesheets. Each structure type is an individual set of rules for processing a
371-
timesheet entry, which consists of different structures nested within it. Structure types define how
372-
often an employee gets paid, the working hours, and if wages are based on a salary (fixed) or how
373-
many hours the employee worked (varied).
374-
375-
For example, a structure type could be `Employee`, and that structure type could have two different
376-
structures in it: a `Regular Pay` structure which includes all the separate rules for processing
377-
regular pay, as well as a structure for an `End of Year Bonus` which includes the rules only for the
378-
end of year bonus. Both the `Regular Pay` structure and `End of Year Bonus` structure are structures
379-
within the `Employee` structure type.
380-
381-
The different :guilabel:`Structure Types` can be seen by navigating to :menuselection:`Payroll app
382-
--> Configuration --> Salary: Structure Types`.
383-
384-
Two default structure types are configured in Odoo: :guilabel:`Employee` and :guilabel:`Worker`.
385-
386-
Typically, :guilabel:`Employee` is used for salaried employees, which is why the wage type is
387-
:guilabel:`Monthly Fixed Wage`, and :guilabel:`Worker` is typically used for employees paid by the
388-
hour, so the wage type is :guilabel:`Hourly Wage`.
389-
390-
.. image:: payroll/structure-type.png
391-
:align: center
392-
:alt: List of all currently configured structure types available to use.
393-
394-
.. _payroll/new-structure-type:
395-
396-
New structure type
397-
~~~~~~~~~~~~~~~~~~
398-
399-
To make a new structure type, click the :guilabel:`New` button, and a blank structure type form
400-
appears.
401-
402-
Proceed to enter information in the fields. Most fields are pre-populated, but all the fields can be
403-
modified.
404-
405-
- :guilabel:`Structure Type`: enter the name for the new structure type, such as `Employee` or
406-
`Worker`.
407-
- :guilabel:`Country`: select the country that the new structure type applies to from the drop-down
408-
menu.
409-
- :guilabel:`Wage Type`: select what type of wage the new structure type uses, either
410-
:guilabel:`Fixed Wage` or :guilabel:`Hourly Wage`.
411-
412-
If the type is to be used for salaried employees, who receive the same wage every pay period,
413-
select :guilabel:`Fixed Wage`.
414-
415-
If the type is to be used for employees, who receive wages based on how many hours they worked
416-
during a pay period, select :guilabel:`Hourly Wage`.
417-
- :guilabel:`Default Scheduled Pay`: select the typical pay schedule for the new structure type from
418-
the drop-down menu. Options are :guilabel:`Monthly`, :guilabel:`Quarterly`,
419-
:guilabel:`Semi-annually`, :guilabel:`Annually`, :guilabel:`Weekly`, :guilabel:`Bi-weekly`,
420-
:guilabel:`Bi-monthly`. This indicates how often this specific type of structure is paid out.
421-
- :guilabel:`Default Working Hours`: select the default working hours for the new structure type
422-
from the drop-down menu. All available working hours for the currently selected company appear in
423-
the drop-down menu. The default working hours that are pre-configured in Odoo is the
424-
:guilabel:`Standard 40 hours/week` option. If the needed working hours do not appear in the list,
425-
a :ref:`new set of default working hours can be created <new-default-working-hours>`.
426-
- :guilabel:`Regular Pay Structure`: type in the name for the regular pay structure. It will be
427-
used as the default option when generating payslips.
428-
- :guilabel:`Default Work Entry Type`: For employees whose contracts is referred under this
429-
structure type, the main work entry type used for all period of work is defined here. It will
430-
commonly be set as **Attendance**,
431-
:guilabel:`Overtime Hours`, :guilabel:`Generic Time Off`, :guilabel:`Compensatory Time Off`,
432-
:guilabel:`Home Working`, :guilabel:`Unpaid`, :guilabel:`Sick Time Off`, :guilabel:`Paid Time
433-
Off`, :guilabel:`Out Of Contract`, :guilabel:`Extra Hours`, and :guilabel:`Long Term Time Off`.
434-
435-
To view all the options for the :guilabel:`Default Work Entry Type`, click the :guilabel:`Search
436-
More..` button at the bottom of the drop-down list.
437-
438-
Depending on the localization settings, this list may contain more options in addition to the
439-
default options.
440-
441-
.. image:: payroll/new-structure.png
442-
:align: center
443-
:alt: New structure type form to fill out when creating a new structure type.
444-
445-
.. _new-default-working-hours:
446-
447-
New default working hours
448-
~~~~~~~~~~~~~~~~~~~~~~~~~
449-
450-
To make new default working hours, type the name for the new working hours in the :guilabel:`Default
451-
Working Hours` field on the new structure type form. Click :guilabel:`Create and edit`. A default
452-
working hours form pops up. The default working hours form has two sections, a general information
453-
section and a tab listing out all the individual working hours by day and time. When the form is
454-
completed, click :guilabel:`Save & Close`.
455-
456-
- :guilabel:`Name`: type in the name for the new default working hours. This should be descriptive
457-
and clear to understand, such as `Standard 20 Hours/Week`.
458-
- :guilabel:`Company`: select the company that can use these new default working hours from the
459-
drop-down menu. Blank field means it's available for all companies.
460-
- :guilabel:`Average Hour Per Day`: the average hours per day field is auto-populated, based on the
461-
working hours configured in the :guilabel:`Working Hours` tab. This entry affects resource
462-
planning, since the average daily hours affect what resources can be used, and in what quantity,
463-
per work day.
464-
- :guilabel:`Timezone`: select the time zone to be used for the new default working hours from the
465-
drop-down menu.
466-
- :guilabel:`Company Full Time`: enter the number of hours per week an employee would need to work
467-
to be considered a full-time employee. Typically, this is approximately 40 hours, and this number
468-
affects what types of benefits an employee can receive, based on their employment status
469-
(full-time vs part-time).
470-
- :guilabel:`Work Time Rate`: this percentage is auto-generated based on the entry for the
471-
:guilabel:`Company Full Time` and the working hours configured in the :guilabel:`Working Hours`
472-
tab. This number should be between `0.00%` and `100%`, so if the percentage is above `100%`, it is
473-
an indication that the working times and/or :guilabel:`Company Full Time` hours need adjustment.
474-
- :guilabel:`Working Hours` Tab: this tab is where each day's specific working hours are listed.
475-
When a new default working hour form is created, the :guilabel:`Working Hours` tab is
476-
pre-populated with a default 40-hour week, with each day divided into three timed sections.
477-
478-
Every day has morning (8:00-12:00), lunch (12:00-13:00), and evening (13:00-17:00) hours
479-
configured, using a 24 hour time format.
480-
481-
To adjust any of these hours, click on the specific field to adjust, and make the adjustment using
482-
the drop-down menus, or in the specific case of the times, type in the desired time.
483-
484-
Keep in mind, working hours are company-specific, and cannot be shared between companies. Each
485-
company needs to have their own working hours set.
486-
487-
.. note::
488-
If the working hours are not consistent each week, and the hours are on a bi-weekly schedule
489-
instead, click the :guilabel:`Switch to 2 week calendar` button at the top of the new default
490-
working hours form. This changes the :guilabel:`Working Hours` tab to display two weeks of
491-
working times that can be adjusted.
492-
493-
Structures
494-
----------
495-
496-
*Salary structures* are the different situations an employee could be paid within a specific
497-
*structure*, and are specifically defined by various rules.
498-
499-
The amount of structures a company needs for each structure type depends on how many different ways
500-
employees are paid, and how their pay is calculated. For example, a common structure that could be
501-
useful to add may be a `Bonus`.
502-
503-
To view all the various structures for each structure type, go to :menuselection:`Payroll app -->
504-
Configuration --> Salary --> Structures`.
505-
506-
Each :ref:`structure type <payroll/structure-types>` lists the various structures associated with
507-
it. Each structure contains a set of rules that define it.
508-
509-
.. image:: payroll/salary-structure.png
510-
:align: center
511-
:alt: All available salary structures.
512-
513-
Click on a structure to view its :guilabel:`Salary Rules`. These rules define how the payslip will
514-
be computed for the employee.
515-
516-
.. image:: payroll/structure-regular-pay-rules.png
517-
:align: center
518-
:alt: Salary structure details for Regular Pay, listing all the specific Salary Rules.
519-
520-
Rules
521-
-----
522-
523-
Each structure has a set of salary rules used to compute the various amounts considered in the pay.
524-
These rules are configured by the localization and affect the computation of the salaries. Modification
525-
or creation of rules should only be done when necessary.
526-
527-
To view all the rules, go to :menuselection:`Payroll app --> Configuration --> Salary --> Rules`.
528-
Click on a structure (such as :guilabel:`Regular Pay`) to view all the rules.
529-
530-
To make a new rule, click :guilabel:`New`. A new rule form appears. Enter the following information
531-
in the fields.
532-
533-
Top section
534-
~~~~~~~~~~~
535-
536-
- :guilabel:`Rule Name`: enter a name for the rule. This field is required.
537-
- :guilabel:`Category`: select a category the rule applies to from the drop-down menu, or enter a
538-
new one. This field is required.
539-
- :guilabel:`Code`: enter a code to be used for this new rule. This field is required.
540-
- :guilabel:`Sequence`: enter a number indicating when this rule is calculated in the sequence of
541-
all other rules.
542-
- :guilabel:`Salary Structure`: select a salary structure the rule applies to from the drop-down
543-
menu, or enter a new one. This field is required.
544-
- :guilabel:`Active`: enable this toggle, so the rule is available for use. Disable the toggle to
545-
continue to show it on the payslip, but skip the computation.
546-
- :guilabel:`Appears on payslip`: tick the checkbox to have the rule appear on employee printed
547-
payslip.
548-
- :guilabel:`View on Employer Cost Dashboard`: tick the checkbox to have the rule appear on the
549-
:guilabel:`Employer Cost` report, located on the *Payroll* app dashboard.
550-
- :guilabel:`View on Payroll Reporting`: tick the checkbox to have the rule appear on payroll
551-
reports.
552-
553-
.. image:: payroll/new-rule.png
554-
:align: center
555-
:alt: Enter the information for the new rule on the new rule form.
556-
557-
General tab
558-
~~~~~~~~~~~
559-
560-
Conditions
561-
**********
562-
563-
- :guilabel:`Condition Based on`: select from the drop-down menu whether the rule is
564-
:guilabel:`Always True` (always applies), a :guilabel:`Range` (applies to a specific range, which
565-
is entered beneath the selection), or a :guilabel:`Python Expression` (the code is entered beneath
566-
the selection). This field is required.
567-
568-
Computation
569-
***********
570-
571-
- :guilabel:`Amount Type`: select from the drop-down menu whether the amount is a :guilabel:`Fixed
572-
Amount`, a :guilabel:`Percentage (%)`, or a :guilabel:`Python Code`. Depending on what is
573-
selected, the fixed amount, percentage, or Python code needs to be entered next. This field is
574-
required.
575-
576-
Company contribution
577-
********************
578-
579-
- :guilabel:`Partner`: if another company financially contributes to this rule, select the company
580-
from the drop-down menu.
581-
582-
Description tab
583-
~~~~~~~~~~~~~~~
584-
585-
Provide any additional information in this tab to help clarify the rule. This tab only appears in
586-
the rule form.
587-
588-
Accounting tab
589-
~~~~~~~~~~~~~~
590-
591-
- :guilabel:`Debit Account`: select the debit account from the drop-down menu the rule affects.
592-
- :guilabel:`Credit Account`: select the credit account from the drop-down menu the rule affects.
593-
- :guilabel:`Not computed in net accountability`: If checked, the amount of the rule will be show
594-
independantly from the Net Salary, to allow a better reporting in Accounting.
595-
596-
Other input types
597-
-----------------
598-
599-
When creating payslips, it is sometimes necessary to add other entries for specific circumstances,
600-
like expenses, reimbursements, or deductions. These other inputs can be configured by navigating to
601-
:menuselection:`Payroll app --> Configuration --> Salary --> Other Input Types`.
602-
603-
.. image:: payroll/other-input.png
604-
:align: center
605-
:alt: A list of other input types for payroll that can be selected when creating a new entry for
606-
a payslip.
607-
608-
To create a new input type, click the :guilabel:`New` button. Enter the :guilabel:`Description`, the
609-
:guilabel:`Code`, and which structure it applies to in the :guilabel:`Availability in Structure`
610-
field.
611-
612-
.. important::
613-
The :guilabel:`Code` is used in the salary rules to compute payslips. If the
614-
:guilabel:`Availability in Structure` field is left blank, it indicates that the new input type
615-
is available for all payslips and is not exclusive to a specific structure.
616-
617-
.. image:: payroll/input-type-new.png
618-
:align: center
619-
:alt: A new Input Type form filled in.
620-
621357
.. _payroll/salary-attachment-types:
622358

623359
Salary package configurator
@@ -894,6 +630,7 @@ form.
894630

895631
.. seealso::
896632
- :doc:`payroll/contracts`
633+
- :doc:`payroll/salaries`
897634
- :doc:`payroll/work_entries`
898635
- :doc:`payroll/time_off_to_report`
899636
- :doc:`payroll/salary_attachments`
@@ -909,6 +646,7 @@ form.
909646
:titlesonly:
910647

911648
payroll/contracts
649+
payroll/salaries
912650
payroll/work_entries
913651
payroll/time_off_to_report
914652
payroll/salary_attachments
-7 KB
Binary file not shown.
-21.4 KB
Binary file not shown.
-13.2 KB
Binary file not shown.

0 commit comments

Comments
 (0)