Friday, March 27, 2026
2 changes · 17.0
Resolved issues and error corrections
This update adds a new overtime wage type (200%) to the Swiss payroll module, aligning with local regulations. This change ensures accurate calculation and reporting of overtime compensation for employees in Switzerland, improving payroll compliance. The update impacts the calculation of Swiss payrolls.
This update fixes an issue where credit note refunds weren't correctly matching invoice lines, leading to potential errors. The new algorithm now prioritizes matches based on product, price, discount, and quantity, preventing redundant matching and ensuring accurate refund processing. This improves the reliability of the refund creation process.
Original PR description
In some cases, the users may have invoices with the same product, price unit, and discount on multiple lines. When they create refunds from such invoices, the lines ids matching algorithm would fail because it would match the first matching line over and over again. Also, lines should not match based on line label, as it can be modified in the refund. This commit solves these 2 issues by 1) Preventing matching an invoice line more than once with refund lines 2) Preventing matching based on line label The new algorithm finds the best match for a refund line from the invoice lines with the following criteria: 1) same product 2) same unit price 3) same discount 4) invoiced quantity should be at least equal to the refunded quantity 5) invoice line should not be matched before 6) from the lines that match previous criteria, we pick the one with the minium quantity task-6004207