How to process the month's payroll
What is it for?
Every month, payroll is done in a batch: a record with one payslip per employee. fiscaldoo creates the payslips from each employee's contract, calculates Social Security, IRS withholding and net pay, and at the end closes the payslips so they do not change after being paid and declared.
The starting point is the What is there to do this month? screen, which opens when you enter the Payroll app. It shows the 9 steps of the month, each with the state Done, Step to do or Blocked, and the button to process it.
When to use it?
- At the end of each month, after approving the absences and entering the variable payments and overtime (steps 1 and 2 on the screen).
- When a new employee has joined: their payslip is created with the others, if the contract is already in force in the month.
This article is not for correcting a payslip already validated: a validated payslip can no longer be changed and is corrected with a corrective payslip.
Where to find it?
Payroll › What is there to do this month? screen › Processar outubro (the button has the name of the month chosen at the top)
The same screen is in Payroll › Prepare › What is there to do this month?. The batches for all months are in Payroll › Process › Process the month.
Before you start
- Your profile is Payroll Processor or Payroll Administrator. Both can do every step in this article.
- Each employee has a contract in force in the month, with the retribution, working hours, Social Security scheme and IRS profile filled in. Without an IRS profile, the company's configuration defaults to “Nothing assumed: no IRS is calculated until the worker's IRS profile exists”.
- The month's absences are approved: they go on the payslip when the batch is calculated.
How to use it
- Open Payroll. At the top of the What is there to do this month? screen, choose the month from the list. By default it shows the current month (on 01/11/2026, November 2026): for the example, choose October 2026.
- Click Processar outubro. A new batch opens, Salários de outubro de 2026, in the Draft state, with the period 01/10/2026 to 31/10/2026 and the Type Regular.
- Check the period and the Type. The batch bar shows the Create the payslips of the month button. Calculate only appears once there are payslips.
- Click Create the payslips of the month (the batch is saved). The message “Payslips created. 8 payslips created; 0 workers already had one.” appears and the batch list now has one payslip per employee, in Draft. Anyone who has already left the company through termination (confirmed, with the last day before the period) does not get a payslip in the month's, Christmas or holiday batch: the message and the Workers left out of the batch warning give the names and the reason, and the other payslips are created anyway. Anyone leaving in the middle of the period stays in that period's batch.
- Click Calculate. The batch becomes Previewed and the Net pay column shows each payslip's amount, with the total underneath (10,382.03 € in the example). The batch shows the warning “The batch is “Calculated”: it can still be calculated again, and it is not closed yet. Validate it when the payslips are right; while no payslip is validated, “Back to draft” or “Delete batch” undo it (a reason is asked).”
- Check the payslips before validating. Click a line to open the payslip: the top shows Gross, Deductions and Net to pay, and the end of the payslip states, in How the amounts were reached, the IRS table, the rate and the deduction (parcela a abater), and the Social Security rates. To compare with the previous month, use Payroll › Process › Month against the month before.
- If you find a mistake, correct the data at its source (contract, absence, variable payment) and click Calculate again, which stays on the batch bar while it is Previewed (next to Validate).
- Click Validate. The batch and the payslips become Validated.
Example. On Ana Margarida Pinto's October payslip (married, single holder, 2 dependants), fiscaldoo calculated automatically:
- Base remuneration 2,400.00 € and Meal allowance 129.15 € (21 days × 6.15 €): gross 2,529.15 €.
- Social Security (worker): 11 % of 2,400.00 € = 264.00 €. The meal allowance was left out of the base; the payslip states “1 excluded by CRC art. 48.º”.
- IRS withheld: 2026 table III (married, single holder), rate 22.77 % on 2,400.00 €, minus the deduction (parcela a abater) of 289.47 € and 2 × 42.86 € for the dependants = 171.29 €, rounded to 171.00 €.
- Net pay: 2,529.15 € − 264.00 € − 171.00 € = 2,094.15 €.
- The company also pays 23.75 % of 2,400.00 € = 570.00 € to Social Security, which does not come out of the salary. The payslip shows the Total cost to the company: 3,099.15 €.
What goes into the Social Security and IRS base, the daily value of the meal allowance and the rounding of the withholding down to the euro are rules that fiscaldoo applies automatically. Pending validation by a certified accountant: limit of the meal allowance excluded from the base (CRC art. 48.º and CIRS) and rounding of the withholding (CIRS art. 99.º-E).
Expected result
- The batch is Validated and so are all the payslips. Above the batch appears “The batch is “Validated”: its payslips are not changed and it is not closed yet. Mark it as paid when the salaries are paid, then close it.”
- On the month screen, steps 3 (Processar outubro) and 4 (Check and validate the payslips) become Done and step 5, Pay the salaries, becomes Step to do.
- The batch now shows the payment buttons: Generate payments, Transfer file, Bank executed and Mark as paid. Before paying, the Payroll Administrator must use Account (How to post the payroll to the accounts): the transfer file is refused while the payslips are not posted. Then go on to How to pay the salaries.
Important notes
- A validated payslip can no longer be changed. The payslip itself says: “Payslip already validated: it can no longer be changed. To correct it, create a corrective payslip.” Check before step 8.
- The payslip must reach the employee by the payment date. A validated payslip warns you while delivery has not been recorded. In the example, with the October batch already paid on 01/11/2026, Ana's payslip shows “Submission: The payslip was not delivered to the worker yet and the payment is on 01/11/2026. What happened: CT art. 276.º/3 asks for the delivery until the payment.” and “Payment: A payment has the value date 01/11/2026, after the due date 30/10/2026: the worker will not have the money in time (CT art. 278.º/5, employer default).” Delivery is recorded on the payslip, in Actions (Delivered by e-mail, Delivered in the portal or Delivered on paper).
- Payment due date. In October 2026 the payslip shows 30/10/2026 and explains: “The period ends on 31/10/2026, a non-working day: the payment falls due on the previous working day, 30/10/2026 (CT art. 278.º, interpretation).” Pending validation by a certified accountant or employment lawyer: falling due on the previous working day when the end of the month is not a working day.
- Step 6 on the screen, Deliver the declarations, is unblocked once the batch is validated: the monthly remuneration statement to the AT and the Social Security declaration use this batch's payslips.
Common problems
“Create the payslips of the month” replies that there is no holiday calendar (January 2027)
- Symptom: in a January 2027 batch, Create the payslips of the month opens “Invalid Operation There is no holiday calendar for 2027 (Continente) in company “Empresa Demonstração, Lda”. What happened: the working days are never guessed without the holidays of the year. How to fix it: create the calendar in Payroll › Configure › Company › Holiday calendars and press “Generate holidays”.”
- Cause: the batch's year does not have a holiday calendar in the company yet.
- What to do: ask the Payroll Administrator to create the year's calendar (New, Year
2027, Generate holidays: in the demo it generated 13 mandatory public holidays). Then click Create the payslips of the month again. See How to configure the company's payroll.
Calculate or Validate reply that the 2027 legal tables have not been published yet
- Symptom: with the calendar in place, Create the payslips of the month creates the payslips (6 in the demo, with minimum wage, IRS and Social Security not calculated), but Calculate opens “Invalid Operation The payslip “Employee name (01/01/2027 — 31/01/2027)” cannot be calculated or validated: the 2027 legal tables have not been published yet. What happened: calculating now would use missing or outdated values (minimum wage, IRS, Social Security) and give wrong amounts. How to fix it: wait for the 2027 legal update package and install it; the law watch marks the year as confirmed.” Validate on a payslip in Draft gives the same refusal.
- Cause: fiscaldoo does not calculate payslips for a year without that year's legal package. The 2027 minimum wage in the demo (970.00 €) is only a forecast and no payslip reads it (How to update the minimum wage).
- What to do: there is nothing to correct in the batch. The payslips stay in Draft and the net pay they show is provisional (for example 2,523.00 € for Ana, with no deductions). Calculate once the 2027 legal update package is installed.
After validating, “Accounting account of every rule with an amount (Blocks the closing)” appears
- Symptom: on the validated batch, “8 worker(s): Accounting account of every rule with an amount (Blocks the closing)”. See who to correct opens the list of employees and, for each one: “Posting blocked: 1 pay item(s) with a value have no posting template on 31/10/2026: Meal allowance. … How to fix it: create a template for each one (Payroll › Configure › Pay item setup › Posting templates).”
- Cause: a pay item on the payslip (here the Meal allowance) has no posting template with a start date up to the end of the month.
- What to do: the warning does not prevent paying or declaring, but it prevents closing the batch. Ask the Payroll Administrator to create the template for that pay item, with the account chosen by the accountant: see How to post the payroll to the accounts.
The company has no employees on the month screen
- Symptom: Active workers (end of the month) shows 0 and step 3 says “There is no batch for this month yet.”
- Cause: the company chosen in the top right corner has no employees with a contract in the month (in a company with no payroll, the screen looks like this, with all counters at 0).
- What to do: check the active company before processing. Each company has its own batches, payslips and returns.