Skip to content
Celtucom
An administrator at a desk with two monitors full of colored rows and columns, reviewing hours

Hours that land in payroll by themselves

Celtucom connects to the payroll packages Dutch teams actually run. Approve a period once and send it across. No export to download, mail around and type in again.

What the connection actually does

Not an export you download and re-key. Five operations against the vendor's own API, in this order, for every package on the list.

  1. 1

    Test the connection

    The link reports back which administrations it can see inside your package. Run more than one, and you pick which administration a connection belongs to.

  2. 2

    Pull the employee list

    People come straight out of the payroll package, with whether someone is paid by the hour, is on call, or draws a fixed salary. That distinction decides what gets sent later.

  3. 3

    Read the wage components

    Which pay rules exist is read from your package: an amount, a base value or a percentage. Celtucom invents no allowance and assigns none.

  4. 4

    Open the payrun for the period

    The connection finds the open payrun for that period, or opens one. If it is already locked, that is recognized and nothing is written into it.

  5. 5

    Write it back per employee, where the package takes it

    Hours and pay rules go into the package one employee at a time, and the package's own answer is kept, so afterwards you can see what was sent and what came back. Not every package accepts a write-back. The note under this list says which, and that is a property of their API rather than of ours.

Writing back is not possible everywhere, and that depends on the package rather than on Celtucom. Exact Online takes no hours back: that connection reads employees and pay rules and writes nothing, because that package's payroll API is read-only. AFAS Profit, Loket.nl and employes.nl only accept a period when it is a full calendar month. With Nmbrs it can be any period.

And what you decide before any of it happens

The connection reads and writes, but it does not choose. Four things an admin sets once, in your own package's terms.

  • Nothing goes across that you did not map

    An admin links each bucket of hours to a wage component that already exists in your own package: overtime at 1.5x, overtime at 2x, paid leave, sick hours and public-holiday hours. Leave a bucket unmapped and those hours are simply not sent.

  • Overtime is hours in the band, not a whole rate

    The overtime buckets hold the hours that fall in the 1.5x or 2x band and exclude the base hours. So either the component you map carries the full loaded rate, or you model base and surcharge separately with a percentage: 50 and 100 to start with, adjustable per company.

  • Sick hours and public holidays stand on their own

    Continued pay during illness is not a holiday hour, and Dutch payroll treats them as different wage components. Map them and those hours are lifted out of the paid-leave line, so they land on their own component exactly once instead of on both.

  • Warnings before it sends, not quiet corrections

    Overtime with no mapping is not sent and is reported with the number of hours it would have carried. A mapping the screen cannot make, such as base hours or a catch-all overtime total, is ignored instead of sent, so the double-counting hazard is impossible rather than merely flagged. And where the package does not say whether someone is hourly or salaried, the base hours do go across, with a warning telling you to check it there. You confirm; nothing is silently reshaped.

And what it deliberately does not do

Three decisions worth knowing before you compare this with a package that promises everything.

  • No hours for salaried staff

    Someone on a fixed monthly salary is sent no hours at all. The package would ignore them, and leaving them out keeps both the preview and the audit record honest.

  • No allowances of our own

    Unsocial-hours and shift allowances come from your collective agreement and live in your payroll package. Celtucom delivers the hours in a form the package can weigh.

  • Nothing written into a locked payrun

    If the period is already closed, the connection sees it and stops. A correction belongs in the payroll package, not in a time-tracking tool.

Not on the list?

Tell us which package you run and we'll talk through what a connection would take.

The name on the list is the product, not the company

It says Exact Online and not “Exact”, because Exact is a company with more packages than that one. Run Exact Globe on your own server and this connection does not help you, which you would rather hear here than after a demo. Same for Nmbrs, which belongs to Visma: what is connected is Nmbrs, not everything Visma sells.

The period that goes across is approved and locked first, in the timesheets. Who may approve it, and who may see what came back, is role-based and enforced at the database. Every connection is included in the plan. There is no integration tier, as the pricing page sets out.