Built for shift teams:
Designed for EU Working Time rules
|
Back to blog
Payroll & Compliance

We stress-tested Chegatta's payroll against a real Portuguese payslip

Chegatta's payroll engine produced a full Portuguese payslip (recibo) from a fictional part-time employee in July 2026. Here are the real numbers, the sections it generated, and the one honest difference we found.

CT

By Chegatta Team

4 min read

Share

We wanted to know whether Chegatta's payroll engine could reproduce a realistic Portuguese payroll from approved shift data — not on paper, but end to end through the same engine that produces the UI, the database calculation, and the PDF.

So we ran it. Here's what happened.

What we tested

We created a completely fictional test scenario grounded in a real Portuguese payslip structure:

  • Company: Chegatta Teste, Lda. — a fake employer in Porto, PT.
  • Employee: Carlos Silva (TEST-001), Preparador de Encomendas, part-time, hired 2024-01-01.
  • Payroll period: July 2026 (JULHO/2026).

The employee's setup was realistic for a Portuguese part-time worker:

  • Hourly rate EUR 10.00.
  • Full-time employment plan type "permanent", Social Security 11%.
  • IRS using the PT-2026 withholding table.
  • Meal allowance EUR 10.20/day.
  • Holiday and Christmas subsidies (1/23.25 of monthly base each).
  • Salary regularization EUR 160.12.
  • Insurance EUR 20.00/month.
  • Employer TSU 23.75%.

The month contained 10 approved shifts:

  • 7 regular shifts, 92 hours total → EUR 920.00.
  • 2 overtime shifts (4h + 10h), treated by the engine as 14h overtime at the configured rate.
  • 1 holiday shift (4h) → EUR 40.00.
  • Plus 2 overtime shifts we deliberately marked as rejected — to confirm the engine excluded them.
  • 1 approved absence, 6 meal-allowance days.

What the engine produced

The engine generated a full Portuguese RECIBO DE REMUNERAÇÃO with all the standard sections you'd expect on a real recibo:

  • RECIBO DE VENCIMENTO header.
  • Entidade empregadora — employer information.
  • Trabalhador — worker information.
  • RENDIMENTOS — earnings.
  • DESCONTOS — deductions.
  • ENCARGOS DO EMPREGADOR — employer contributions, TSU at 23.75%.
  • INFORMAÇÃO DE PAGAMENTO — payment section.
  • RESUMO DO TEMPO DE TRABALHO — work summary.

The PDF was generated by the same template that powers the real slip, consuming the same source of truth as the calculation and the UI.

The numbers (fictional, but real from the engine)

Here are the figures the engine calculated for this fictional employee:

ComponentEngine result
Base salaryEUR 920.00 (92h × EUR 10.00)
Overtime (engine)EUR 210.00 (14h at configured rate)
Holiday subsidyEUR 21.01
Christmas subsidyEUR 21.01
Meal allowanceEUR 61.20
Salary regularizationEUR 160.12
GrossEUR 1,393.34
Social SecurityEUR 149.31 (base EUR 1,357.34 @ 11%)
IRSEUR 162.38 (bracket 1310–1550, effective 21.5%)
InsuranceEUR 20.00
Total deductionsEUR 331.69
NetEUR 1,061.65

For the IRS line on the PDF, the printed bracket label says "x 22%" but the amount uses the effective 21.5% rate — that's a cosmetic label/amount mismatch we've noted but not hidden.

The one honest difference we found

We compared the engine output to a reference Portuguese payslip structure. Most components matched exactly: base salary, holiday subsidy, Christmas subsidy, meal allowance, salary regularization, IRS bracket math.

There was one structural difference:

Overtime treatment. The reference payslip split overtime into several tiers — some hours at 25%, some at 50%, some at 150%. In our test, the engine charged a single configured multiplier on the whole overtime bucket, which produced a different overtime line and a different gross.

That difference flowed into Social Security too, because the engine taxed the full IRS base for Social Security, while the reference taxed a smaller base.

Net: the engine calculated EUR 1,061.65. The reference structure implied EUR 379.24. That's a EUR 682.41 difference, and it's explained by the overtime and Social Security base differences — not by a bug we tried to hide.

We documented it. We didn't rewrite the engine just to make this one test match the reference. That's the point of publishing this.

What this means in plain terms

Chegatta's engine:

  • Can produce a complete Portuguese payslip from approved shift data.
  • Generates the recibo sections a real PT payroll needs.
  • Computes Social Security and IRS from configurable rules.
  • Produces the same numbers in the UI, the database, and the PDF.

What it doesn't yet do in this test scenario: split overtime into multiple premium tiers the way a specific reference payslip did. That's a real limitation worth knowing before you buy — and it's exactly the kind of thing a local accountant should confirm for your sector.

This was fiction, not a real person

Every piece of data here is fictional: Carlos Silva, TEST-001, Chegatta Teste Lda., NIPC 999999990, the Porto address, the IBAN, the NISS, the NIF. No real personal information was used or stored in the test.

If you want to see the full test report with the line-by-line comparison, it's in our internal docs. The public version here is the buyer-friendly summary.

CT

About Chegatta

Chegatta is a verified, compliant attendance platform for staffing agencies and businesses. Our team writes practical guides on attendance, payroll compliance and preventing time theft.

Related posts

Instant 2-Minute Setup • No Credit Card Required

Start Running Accurate Shift Roster & GPS Clock-In Today

Zero hardware cost. Automate time tracking, shift verification and banking-grade SEPA payroll exports.

14 days full accessZero setup hardwareCancel anytime