Skip to content

Commissions and payroll

A pay model set separately for each practitioner, a monthly payout calculation for a period, finalisation, marking as paid and an export for the accountant. A practitioner can raise a dispute over their own payout.

Required permissions:
Clinic Admin
Reviewed: 2026-08-24

Payroll works out how much the clinic owes each practitioner for a period worked. The basis is the pay configuration attached to the person; from it Heltio builds a payout draft, which an administrator reviews, finalises and marks as paid.

A payout never comes into being by itself — you always start a calculation for a chosen period. A finalised payout is locked and cannot be undone.

Open Payroll

How to do it

01

Set the pay model for a person

On a team member's profile, open the Pay Configuration. You pick one of five models:

ModelWhat it countsThe app's own example
Percentage% of appointment revenue60% of 200 PLN = 120 PLN
Fixed per visita flat amount per completed visit80 PLN per visit
Fixed per hourper hour of actual duration100 PLN/h × 2h = 200 PLN
Salarya flat monthly base5,000 PLN/month
Hybridbase + a percentage above a threshold3,000 PLN + 30% above 10,000

On top of that you set the Pay cycle — weekly, bi-weekly or monthly — and the Commission basis, which decides when commission arises at all:

  • Paid revenue — only once the patient's invoice is paid.
  • Billed revenue — when the invoice is issued, regardless of payment.
  • Completed appointments — once the appointment is marked completed, even with no invoice.
02

Fine-tune what enters the calculation

Two switches change what goes into the base:

  • Include no-show fees — adds revenue from fees for patients who did not turn up.
  • Include package amortization — spreads the revenue from a pass sale across the individual redemptions, instead of booking all of it on the day of sale.

The Service overrides section lets you give selected services a different rate. For somebody running their own business you tick Practitioner is B2B and give their NIP. Under the form stands an Estimate preview computed from the last 30 days.

03

Calculate payouts for a period

Run calculation opens a dialog with Period start, Period end and Practitioners (leave empty for all). Heltio warns: "If a payout already exists for a practitioner in this period, it will be recalculated and overwritten (only if still in DRAFT status)."

The result is drafts — one per person. Four indicators above the list show Draft, Finalized, Paid this month and Outstanding to pay.

Konto demonstracyjne — dane przykładowe, nie są to dane rzeczywistePayroll+ NowaEksportFaktury350Przychód74 200 złZaległe12 400 złTyp ▼Okres ▼Wystawca ▼Szukaj...NumerDataNabywcaKwotaStatusAkcjeFV/2024/00101.01.2024Kowalski Jan1 230,00WysłanoFV/2024/00205.01.2024Nowak Maria560,00OczekujeFV/2024/00312.01.2024Wiśniewska A.3 400,00WysłanoFV/2024/00418.01.2024Zając Piotr890,00BłądFV/2024/00524.01.2024Lewandowski T.2 100,00Szkic1Run calculation2Four indicators4The status column
The status in the last column settles what may be done with a payout — a draft can still be corrected, a finalised one cannot.

1 is Run calculation, the only way into a period's calculation. 2 is the four indicators listed above. 4 is the status column — it tells you whether a row is still a draft or an already-closed document, and therefore whether steps 4 and 5 are open to it.

04

Review and finalise

Open a draft and go through the Payout items — visits, package amortisation, no-show fees, the base, bonuses and deductions. Add adjustment adds a bonus, a deduction or a manual correction with a description.

Once the total is right, use Finalize — one at a time, or in bulk with Finalize selected. The confirmation says it outright: "Finalized payouts are locked. Practitioners will be notified and will be able to view them. This action cannot be undone."

05

Pay and hand it to the accountant

After the transfer, use Mark as paid: you give a Payment method, a Reference / transaction ID and a Payment date.

Export XLSX prepares a summary for the month; the CSV export is described in the app as "CSV format compatible with Płatnik, Symfonia, and Optima" — with the tax and social-security columns left empty for the accountant to fill in.

For somebody who invoices the clinic, the payout waits for their document; once it arrives in the KSeF Inbox, use Link invoice.

When something does not work

Warning

This payout has already been finalized and cannot be edited.

What this means: You are trying to change items or add an adjustment to a payout that is already locked.

What to do: Settle the difference with an adjustment in the next period. Finalisation cannot be undone.
Warning

Payout must be finalized before marking as paid.

What this means: Mark as paid was clicked on a draft.

What to do: **Finalize** first, then mark it as paid.
Warning

Period end must be after period start.

What this means: The dates in the calculation dialog are reversed or identical.

What to do: Correct the range. For a month, set the first and the last day.
Info

No appointments in the last 30 days. Estimated payout: 0.00 PLN.

What this means: The preview has nothing to compute from — the person has had no completed visits recently.

What to do: This is not a configuration error. Save it and check the preview after the first visits.
Warning

Invalid NIP number. Must be 10 digits.

What this means: B2B settlement is ticked and the NIP entered has a different length or contains non-digits.

What to do: Enter ten digits, with no hyphens and no PL prefix.
Warning

Cannot delete: finalized payouts exist for this configuration.

What this means: The configuration is the basis of payouts that have already been closed.

What to do: Change the model instead of deleting the configuration. The payout history has to stay intact.

Who has access

Clinic Admin Practitioner

The pay configuration, the calculation, finalisation, marking as paid and the exports are run by the clinic owner or an administrator. A practitioner sees only their own payouts — the heading then changes to Your payment history and upcoming payouts — and has one action of their own: Raise a dispute.

The whole module is part of the plan that includes payroll exports; a clinic without it will not see the Payroll entry in the menu.

Was this article helpful?

Didn't find an answer? Write to us.

Open the contact form