From 0b52ddd38a0b656f17bda9c932aa12cbd70c5925 Mon Sep 17 00:00:00 2001 From: larm-odoo Date: Wed, 27 Aug 2025 17:03:03 -0400 Subject: [PATCH] [ADD] Payroll: Adding Commissions --- content/applications/hr/payroll.rst | 2 + .../applications/hr/payroll/commissions.rst | 53 ++++++++++++++++++ .../commissions/commission-details.png | Bin 0 -> 20131 bytes .../applications/sales/sales/commissions.rst | 3 + 4 files changed, 58 insertions(+) create mode 100644 content/applications/hr/payroll/commissions.rst create mode 100644 content/applications/hr/payroll/commissions/commission-details.png diff --git a/content/applications/hr/payroll.rst b/content/applications/hr/payroll.rst index 528840ce77..18bec39a38 100644 --- a/content/applications/hr/payroll.rst +++ b/content/applications/hr/payroll.rst @@ -898,6 +898,7 @@ form. - :doc:`payroll/salary_attachments` - :doc:`payroll/payslips` - :doc:`payroll/batches` + - :doc:`payroll/commissions` - :doc:`payroll/reporting` - :doc:`payroll/work_entry_analysis` - :doc:`payroll/salary_attachment` @@ -911,6 +912,7 @@ form. payroll/salary_attachments payroll/payslips payroll/batches + payroll/commissions payroll/reporting payroll/work_entry_analysis payroll/salary_attachment diff --git a/content/applications/hr/payroll/commissions.rst b/content/applications/hr/payroll/commissions.rst new file mode 100644 index 0000000000..a2bb2ffbf5 --- /dev/null +++ b/content/applications/hr/payroll/commissions.rst @@ -0,0 +1,53 @@ + +=========== +Commissions +=========== + +Commissions are payments made to employees that are earned as part of their salary. The payments are +awarded after a sale has been made, and the amount depends on how much the sale was. Typically the +amount is either a percentage of the sale, or a set commission based on a structure created by the +company. + +To pay an employee a commission they earned, a separate commission paycheck must be issued to the +employee. In Odoo, a commission payslip is referred to as a *warrant payslip*. + +Create warrant payslips +======================= + +Warrant payslips are generated directly from the :guilabel:`Payslips Batches` dashboard, which is +accessed by navigating to :menuselection:`Payroll app --> Payslips --> Batches`. + +First, click the :guilabel:`Generate Warrant Payslips` button in the top-left corner. Doing so +reveals a :guilabel:`Generate Warrant Payslips` pop-up window, in which the necessary information +**must** be filled out. + +Set the time frame the commission was earned, in the two fields next to :guilabel:`Period`. Click +into each field, and a calendar pop-up window loads. Navigate to the desired date and click on it +to select it. + +Using the drop-down menu, select the :guilabel:`Department` in the corresponding field. When a +department is selected, the employees listed for that department appear in the :guilabel:`Employee` +section, below. + +If a file is needed for the record, upload a file to the :guilabel:`Import File` field, such as a +sales invoice, using the :guilabel:`Upload your file` button. Any file type is accepted. + +Under the :guilabel:`Employee` section, enter the individual :guilabel:`Commission Amount` for each +employee in the far-right column. To remove an employee, click the :icon:`fa-trash-o` +:guilabel:`(trash)` icon to remove the line. + +Add a new commission by clicking :guilabel:`Add a Line`, and entering the :guilabel:`Employee` and +the appropriate :guilabel:`Commission Amount`. + +Once all the commissions are properly entered, click the :guilabel:`Generate Payslips` button to +create the warrant payslips in a batch, or click :guilabel:`Export` to export a CSV file of the +commissions. + +:ref:`Process the batch ` in the same way as a typical batch to complete the +payment process. + +.. image:: commissions/commission-details.png + :alt: Enter the commission details. + +.. seealso:: + :doc:`Commissions <../../sales/sales/commissions>` diff --git a/content/applications/hr/payroll/commissions/commission-details.png b/content/applications/hr/payroll/commissions/commission-details.png new file mode 100644 index 0000000000000000000000000000000000000000..366a674893cb467c80d1ea26e1181b1b40853b40 GIT binary patch literal 20131 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 n89iyE#k19a`