Skip to main content
Pending validationOdoo 20.0Community and Enterprise

How to handle absences and lateness on the payslip

What is it for?​

An absence only affects the payslip when the law requires the loss of pay. fiscaldoo decides this from the absence type: once the type is chosen and the absence approved, the month's payslip deducts the hours lost by itself, and that day's meal allowance is no longer paid.

When to use it?​

  • The employee was absent without justification (unjustified absence).
  • The employee was absent with justification: marriage, death of a relative, blood donation, school exam, caring for a child.
  • The employee went on strike.

Sick leave or leave after a workplace accident has its own handling (proof, who pays, health data) and is not recorded with this article.

Where to find it?​

Payroll › Prepare › Absences › New

The absence types and the effect of each one are in Payroll › Configure › Absence types (only the Payroll Administrator sees the Configure menu).

Before you start​

  • The profile that records and approves the absence is Human Resources (HR, managing all absences). With the Payroll Processor profile, the absence form opens without the Worker field: it would only be for themselves.
  • The batch for the month of the absence has not been validated yet. An absence in a month already paid does not change the payslip: fiscaldoo warns you and prepares a corrective payslip (see “Important notes”).
  • The employee's contract has the working schedule: the hours lost are counted from it (8 hours on an 8-hour day).

How to use it​

  1. Open Payroll › Prepare › Absences and click New.
  2. In Worker, choose the employee, for example Carla Sofia Mendes.
  3. In Time Type, type part of the name and choose the type, for example Unjustified absence.
  4. In Dates, choose the first and last day, for example 05/11/2026 to 05/11/2026. Both fields show today's date (on a Sunday, 01/11/2026, the duration is 0.00 day(s); Validate refuses it: “The absence of … has no working day (weekend, holidays or no contract). How to fix it: correct the dates.”). With the right dates the duration appears (1.00 day(s)) and, below, Back to work on and First working day back. Until you choose the type, the form title says “Absence with the retribution suspended”.
  5. Save. The absence is To Approve.
  6. Click Approve: it becomes Second Approval. Click Validate: it becomes Approved.
  7. Check, in the Portuguese law: communication, proof and effect tab, the Classification and the Hours of retribution lost. For a one-day unjustified absence: “Art. 249.º/3: unjustified absence.” and 8.00.
  8. When the month's batch is computed (see How to process the month's payroll), open the employee's payslip and check the Retribution lost by absences line.

What each type does to the payslip​

The Portuguese law: communication, proof and effect tab shows the fields the type requires (for example Communicated at, Proof asked on, Child's date of birth). The Retribution column of Configure › Absence types gives the effect. Some examples, copied from that list:

Type of absenceLetterRetribution
Unjustified absenceNot foreseen (art. 249.º/3)Loss of retribution
Marriagea)Retribution kept
Death of spouse, child or stepchild (20 days)b)Retribution kept
Blood donationl)Retribution kept
Assistance to a child (art. 49.º)e)Loss of retribution
Authorised or approved by the employerk)Loss of retribution
Strike (suspension of the contract, CT art. 536.º)l)Loss of retribution

In Time Type, the types that would reveal joining a strike or a health reason have neutral names: a strike appears as Absence with the retribution suspended, and there are three Justified absence — impossibility to work (CT art. 249.º/2-d) types distinguished only by the letters A, B and C, and seven Justified absence — protected by law from A to G. The screen does not say which reason each letter corresponds to; before choosing one of them, check with whoever manages health data in the company. The types marked To validate (to be confirmed by the certified accountant) in the Retribution column are still waiting for the accountant's decision. Pending validation by a certified accountant: effect on pay of the types marked “To validate (to be confirmed by the certified accountant)” (for example “Candidate to a public office” and “Elected to a collective representation structure”).

Example. Carla Sofia Mendes earned €1,900.00 on the November payslip and was absent without justification on 05/11/2026 (with pay of €1,950.00, the deduction would be €65.00, 1,950.00 ÷ 30). On the November payslip:

  • Retribution lost by absences: 8.00 hours, −€63.33. How was it calculated? explains: “The value of a day comes from the monthly retribution by the method of the company (Rm / 30 …)”, that is €1,900.00 ÷ 30.
  • Meal allowance: 20 days instead of 21 (€123.00).
  • Gross €1,959.67 and Social Security (worker) 11 % of €1,836.67 = €202.03: the Social Security base already excludes the lost day.

The daily value (monthly pay ÷ 30) is the company's choice in Configure › Payroll settings. Pending validation by a certified accountant: calculation of the deduction for one day of absence (monthly pay ÷ 30 or the hourly rate of Labour Code art. 271) and the effect of an unjustified absence on seniority and holidays (Labour Code art. 256).

Recording an absence does not create journal entries. The deduction reaches the accounting with the month's payslip.

Expected result​

  • The absence is Approved, with the Classification and the Hours of retribution lost filled in.
  • The month's payslip has the Retribution lost by absences line with the negative amount and How was it calculated? explains the daily value.
  • On the payslip, the Absences button (under Linked documents) shows how many absences were included in the calculation.

Important notes​

  • An absence in a month already paid does not change the paid payslip. When approving an unjustified absence on 28/10/2026, with October already paid, fiscaldoo shows the warning “Absence in a month already paid. A falta de “Fábio Nuno Carvalho” tem dias num mês já pago (outubro 2026) e esse recibo está fechado: não é alterado. …” (Fábio Nuno Carvalho's absence has days in a month already paid (October 2026) and that payslip is closed: it is not changed. What happened: the difference was written into the draft corrective payslip … How to fix it: open it from the absence's “Corrective payslips” field, check the amount and validate it…). Fábio's October corrective payslip, in Draft, has Retribution lost by absences of −€48.33 (8.00 hours) and Meal allowance of −€6.15 (−1 day), net −€54.48. It is still to be validated and paid by the Payroll Processor; see How to correct a payslip already processed. The November payslip does not deduct this absence.
  • Two absences on the same day. Recording another absence overlapping an approved one is refused: “Validation Error. Um trabalhador já tem uma ausência marcada que coincide com este período: Carla Sofia Mendes de 05/11/2026 até 05/11/2026 - Aprovado.” (An employee already has an absence that overlaps this period: Carla Sofia Mendes from 05/11/2026 to 05/11/2026 - Approved.)
  • Lateness. Lateness is recorded on the employee record, in the gear menu, under Lateness; Payroll › Prepare has no entry of its own. Pending on-screen validation: recording lateness and its effect on the payslip; the Lateness item exists on the record, but the window did not open in the attempt made for this version of the article.
  • Justified absences require proof. On the types that require it, the Evidence block appears (Proof asked on, Proof due on, Proof delivered on, Proof status). Keep the reference of the proof.

Common problems​

There is no Worker field on the absence form​

  • Symptom: with the Payroll Processor profile, Absences › New opens with only Time Type, Dates and Description.
  • Cause: only those who manage all absences (HR profile) choose the employee. The Payroll Processor sees and uses absences on the payslip, but does not record them for others.
  • What to do: ask Human Resources to record it.

On saving, “… cannot be accepted” and “A document must be attached…” appear​

  • Message: “É obrigatório juntar um documento que justifique este tipo de ausência.” (A document justifying this type of absence must be attached.) and, for example, “Validation Error Leave to assist a child with a disability or chronic disease (arts. 52.º and 53.º) of Diogo Ferreira Lopes cannot be accepted. What happened: the leave for a child with a disability or chronic disease needs the child's date of birth, which is missing. How to fix it: fill in “Child's date of birth”. Correct the data listed and try again.”
  • Cause: the chosen type requires data or proof that was not filled in. It also happens when the wrong type is chosen: typing “Doen” in Time Type suggests this leave, which is not an absence for illness.
  • What to do: click Close, check the type and fill in the field named in the message.

The payslip does not deduct the absence​

  • Cause 1: the absence is not Approved (it stayed in To Approve or Second Approval).
  • Cause 2: the month's batch was computed before the absence was approved.
  • What to do: approve the absence and, with the batch in Previewed, click Calculate again.
Versions: Odoo 20.0Community and Enterprisefiscaldoo 20.0 (master ba9c8bd7)ID DOC-0196
Was this page helpful?