Michpal: The Attendance Import and the Accounting Export
Back to blog
automation·September 5, 2026·5 min read·By Yehonatan Saadia

Michpal: The Attendance Import and the Accounting Export

Michpal takes attendance in from clocks and pushes payroll results out to accounting. What is configured once, what breaks monthly, and what is not published.

Key takeaways

  • Michpal's own attendance page states it captures attendance reports from time clocks of all types, handles absences, events and projects, and transfers automatically to payroll. It does not publish a file layout, a clock brand list or an API.
  • The layout you will actually build against comes from the other side. JB Clock, a time-clock vendor, publishes that its Michpal interface file is named QDIV, alongside TAMAL.DAT for Shiklulit and SALxxxxx.MM for Trio/Oketz.
  • The interface is not the hard part. The one-time mapping is: company number, the salary components (100%, 125%, 150%, 200% plus vacation, sick, reserve, absence, travel), and the payroll employee number for every person.
  • Employee master data has its own inbound path. One published third-party integration loads employees into Michpal as XLSX or XML, named employees_[company_number], after a one-time template is defined in Michpal's data-load settings.
  • The same integration documents that around 40 Michpal-side fields are not covered by either format - which is the normal shape of an import, not a defect.

Michpal is an Israeli payroll product with attendance and pension modules alongside it, and it sits between two file doors: attendance reports coming in from time clocks, and payroll results going out to bookkeeping. Michpal publishes no record layout for either, so both doors are configured once with the vendor and then repeat monthly.

The two doors: what goes in and what comes out

Michpal is a payroll house product - the vendor states it produces well over a million payslips a month - and its published module list covers payroll, pension, a portal, attendance, a time clock, a professional knowledge service and a field-employee variant. For integration purposes only two directions matter:

  • Inbound, per period. Hours and absence quantities per employee per salary component, produced by whatever collects attendance.
  • Inbound, on change. Employee master data - a new hire, a bank account change, a tax status change.
  • Outbound, per period. The payroll journal entry for bookkeeping, plus whatever reports finance needs.

Those three have completely different rhythms, and the most common architectural mistake is building one mechanism for all of them. Master data changes when a person changes; the period file moves once a month against a hard deadline; the journal entry is produced only after payroll is approved and must never run twice.

What does the Michpal interface file look like?

Michpal does not publish it. The public site is product material with no file structure, field list, character encoding or API description on it.

What is published sits on the sending side. JB Clock, an Israeli time-clock vendor, publishes a page listing the interface file it generates per payroll program:

Payroll programInterface file the clock vendor names
MichpalQDIV
Shiklulit - TamalTAMAL.DAT
Trio - OketzSALxxxxx.MM
Hilanlisted, no file name given
Hargellisted, no file name given
Otzmalisted, no file name given

Two things follow from that table. First, a file name is not a specification - knowing the file is called QDIV tells you nothing about its columns, and you still need the layout from Michpal or from the clock vendor's support. Second, the fact that every payroll program has a different file name is the whole reason attendance vendors sell "an interface" as a configured service rather than as a documented format. The generic version of that file, field family by field family, is in the attendance-to-payroll interface file.

The one-time setup that decides whether the monthly run works

The clock vendor's own page is explicit that the interface requires a one-time definition: the company number in the payroll program, the various salary components (100%, 125%, 150%, 200%) together with vacation, sick, reserve, absence and travel components, and per employee the employee number as it exists in payroll.

That is the whole project, compressed into one sentence. Expanded:

What is definedWhere it livesSymptom when it is wrong
Company numberPayroll programThe file loads into the wrong entity, or is rejected outright
Component code per hour typeBoth sides, must matchHours land on the wrong line of the payslip
Overtime tiers 125% / 150% / 200%Attendance rules, then mappedOvertime paid at base rate, discovered by an employee
Absence categoriesBoth sidesSick leave consumes vacation balance or vice versa
Payroll employee number per personAttendance record for each employeeThat employee is simply missing from the run
Period boundariesAttendance systemShifts crossing midnight on the last day land in the wrong month

The row that costs the most is the last one in practice, because it produces a small, plausible error every single month rather than an obvious failure once.

Employee master data: the other inbound door

Attendance is not the only thing that has to reach Michpal. New employees, bank details and tax status have to arrive too, and there is at least one publicly documented path.

The HR product Ovdim publishes an integration page describing an export into Michpal in XLSX or XML, with the file named employees_[company_number] plus the format extension, after a one-time template is configured in Michpal's data-load settings. Its published field notes are unusually candid and worth reading before you assume any employee import is complete:

  • Bank number, branch, account number, calculation symbol and salary basis are supported in the XLSX format only, not in the XML one.
  • Roughly 40 Michpal-side fields - department, grade, seniority accrual, vacation and sick balances, discharge date and similar - are not covered by either format.
  • On an update to an employee who already exists in Michpal, the salary basis is not changed.

That last rule is the kind of detail that decides an architecture. If the import cannot change salary basis for an existing employee, then salary basis is owned by payroll, not by the HR system, and your process has to say so out loud rather than assume the file will fix it.

Why does the same interface work in one company and fail in another?

Because the interface carries quantities, and the meaning of those quantities is defined in configuration that differs per company. Two organisations running identical software will disagree on:

  • Whether the 100% component is hours or days.
  • Whether a component code is reused with a different meaning in a second employing entity.
  • Whether travel is a fixed monthly amount in payroll or a per-day quantity from attendance - if both sides think they own it, it is paid twice.
  • Whether an employee moving between departments mid-month is one row or two.
  • Whether a global company holiday reaches payroll as an absence code or as nothing at all.

None of these are bugs. They are unwritten agreements, and an interface is where unwritten agreements come to fail. Write them into a mapping document that both sides sign, and keep it next to the file, not in someone's memory.

Getting payroll results out to accounting

The outbound direction is a journal entry, and it has a property the inbound file does not: it must balance and it must post exactly once. Practical rules that hold regardless of which bookkeeping system receives it:

  • Post the summary, not the payslips. Bookkeeping needs accounts and amounts, not names and salaries, and keeping identity data out of the journal narrows who has to be authorised to see it.
  • Reconcile total debits to total credits before anything is sent. A journal that does not balance is rejected downstream, usually after hours.
  • Keep the period stamp on the entry, not the export date, so a re-run in the following month still posts to the right month.
  • Record which run produced which entry, so a correction can be traced instead of re-posted.

If the receiving system is Hashavshevet, its own interface behaviour is covered in the Hashavshevet API integration guide. The wider month-end sequence, from collection through to approval, is in how to automate payroll.

Sources

#Michpal#attendance interface#payroll#accounting export#Israel#מיכפל

Frequently asked questions

Does Michpal have an API?

No public API documentation, endpoint list or developer portal for Michpal could be found. Its public pages describe modules and capabilities only. Integrations in the field are file-based and configured with the vendor or with the attendance supplier, so ask for the layout in writing before scoping.

What is the QDIV file?

QDIV is the name a time-clock vendor publishes for the interface file it generates for Michpal. The name is public; the record layout is not. Treat it as the file you will be asked to produce, and obtain its columns and encoding from Michpal or from the attendance vendor's support.

Can I load new employees into Michpal from a file?

At least one published third-party integration loads employee master data as XLSX or XML after a one-time template is configured in Michpal's data-load settings. Its documentation notes that a number of Michpal-side fields are outside both formats, so treat file loading as partial and plan for the remainder.

Who should own the mapping between attendance components and payroll components?

One named person, with the mapping written down and versioned. In practice it is the payroll controller, because payroll is where an incorrect component becomes money. The attendance supplier configures it; the organisation still has to be able to read and check it.

Keep reading

Related service

Business Automation

I build custom automations that remove repetitive work end to end.

Learn more →←

About the author

Yehonatan Saadia

Freelance automation, web & MVP developer

I'm Yehonatan Saadia, a senior developer who builds business automation, custom websites, and MVPs for small and mid-sized companies across the US, Europe, and Israel. These guides come from real client work, not theory.

Work with me

Have a project like this?

Tell me what you're trying to automate or build. I reply within 24 business hours with a few targeted questions, then we walk through it on a free 30-minute call, with no commitment. You come away with a scope, a timeline and a fixed price - or a straight answer that it isn't worth building.