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.
How to do it
Set the pay model for a person
On a team member's profile, open the Pay Configuration. You pick one of five models:
| Model | What it counts | The app's own example |
|---|---|---|
| Percentage | % of appointment revenue | 60% of 200 PLN = 120 PLN |
| Fixed per visit | a flat amount per completed visit | 80 PLN per visit |
| Fixed per hour | per hour of actual duration | 100 PLN/h × 2h = 200 PLN |
| Salary | a flat monthly base | 5,000 PLN/month |
| Hybrid | base + a percentage above a threshold | 3,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.
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.
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.
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.
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."
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
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.
Payout must be finalized before marking as paid.
What this means: Mark as paid was clicked on a draft.
Period end must be after period start.
What this means: The dates in the calculation dialog are reversed or identical.
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.
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.
Cannot delete: finalized payouts exist for this configuration.
What this means: The configuration is the basis of payouts that have already been closed.
Who has access
Clinic Admin PractitionerThe 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.
Related
- Service price list — service revenue is the basis of commission.
- Invoices and KSeF — the invoice from a practitioner settling as a business.
- Financial reports — the Commission report aggregates payouts for a period.
- The clinic team — inviting team members and their roles.
Related features
Service price list
The clinic's service catalog — price, duration, VAT rate, visibility in online booking and price overrides for individual practitioners. The calendar, invoices and packages all take their price from here.
Invoices and KSeF
Issuing invoices, proformas and corrections, submitting to the National e-Invoice System, and the KSeF Inbox with invoices from suppliers. Numbering, seller details and the VAT exemption basis are set once, under Billing.
Financial reports
Eight reports at one address — revenue, outstanding, cash flow, commission, VAT summary, insurance, packages and wallets — with filters, a chart, a table and an export to XLSX or PDF.
The clinic team
The list of people working in the clinic: who holds which role, how to change it, how to take access away from someone leaving, and what happens to their appointments and notes.