Ga naar hoofdinhoud

Features

StableBetaComing soon
30 Procent RegelingApply a granted 30%-ruling in payroll, so an employee hired from abroad pays wage tax on less of their wage.Abp AansluitingRecord which client administraties are legally obligated (Wet Privatisering ABP, 1996) to affiliate with ABP, and close the one compliance gap the shipped, deliberately fund-blind and tenant-blind nl-upa-monthly-completeness check (pension-filing-upa-mvp) cannot catch: an obligated administratie whose own payroll was approved but never actually filed with ABP for that period.Absence Deadlines And SignalsNobody has to remember a Wet verbetering poortwachter date: HR and the manager are reminded before each milestone and when it is overdue, the 42-week notification to UWV is generated from the case, and frequent absence is signalled at a threshold each administration sets.Absence RateGive humaniq the FTE-weighted verzuimpercentage the sector reports, by recording partial work resumption on SickLeaveCase and computing a rate from it.App IdentityThe app's Nextcloud identity.Asset ManagementGive humaniq its first asset register: company property (laptops, phones, vehicles, tools, access passes, clothing) as Asset records with a declarative custody lifecycle, and effective-dated AssetAssignment uitgiftes linking assets to employees.Audit Trail PayrollBefore this change, PayrollRun.engineVersion/calculatedAt pinned WHICH code and tax-year parameters produced a run, but nothing pinned WHICH resolved input values (gross salary, taxTableColor, loonheffingskortingToegepast, Awf/Aof tariffs, Whk percentage) fed it.AVG DsrOpenRegister ships two data-subject-request surfaces.Bhv OrganisatieTrack who holds a valid BHV-related certification (bedrijfshulpverlening) and when it expires, and signal an expiring certificate through the **existing hr-signals mechanism** rather than a second alerting mechanism.Cao LibraryTurns the payroll engine into a *compliance* engine by giving the audit something sector-specific to check a contract against.Comp Collective Raise And Step IncreaseRaise many salaries in one compensation cycle: a collective raise for everyone in scope or a hand-picked selection, the yearly step in the employer's own pay scale proposed when it falls due, approval that stays four eyes per adjustment, effectuation from the cycle page after a preview, and a refusal that carries a reason the employee receives.Comp CyclesHumaniq owns the personnel dossier, the payroll engine that reads Employee.grossMonthlySalary, and a maintained CAO corpus, but had no surface for the recurring management ritual every employer runs on top of those numbers: a periodic compensation review where managers propose salary adjustments against a band, a second actor approves them, and the approved figure lands on the employee's compensation on a chosen effective date.Department FiguresAbsence rate, absence frequency and wage cost per org unit, compared side by side for HR and accountants, and a manager's own dashboard with the totals of the units they lead.Dga Payroll ModeA DGA (directeur-grootaandeelhouder.Document Dossier AVGA personnel-dossier view tying an employee's generated documents together, the loonbelastingverklaring retention sibling to the shipped identity-document rule, and an Employee-scoped storage-limitation-ceiling check.Employee And Contract RecordsEvery HR and payroll feature in humaniq hangs off two records: the employee and the employment contract.Employee HistoryOne employee's career in one place: the dated events of contracts, placements, applied pay changes, approved leave, sickness and finalised reviews, composed on read and filtered by the caller's own access, and the contracts that run side by side today with their summed hours, FTE and the person's leave balance.Expenses Travel CalculationTravel claims whose amount humaniq calculates from the distance at the employer's rate, split into a tax-free and a taxable part; commuting arrangements with a fixed monthly allowance under the 214-day rule and a distance from a route planner through integriq; and the yearly business and commuting kilometres per transport mode and fuel for the werkgebonden personenmobiliteit (WPM) CO2 reporting duty.First Time SetupAn administrator who installs humaniq gets a short guided first run: a welcome, a choice to load example data or start empty, and a closing step.Fleet BijtellingBijtelling privégebruik auto (Wet LB 1964 art.Formation PositionsA unit's formation: budgeted places per unit and function, which contracts fill them, and the budgeted, filled, vacant and net FTE computed on read.Functiehuis Hr21HR21 is the VNG-owned functiewaarderingssysteem for the Dutch municipal sector (Cao Gemeenten / Cao SGO name it as the applicable job-evaluation system unless an employer has chosen another union-recognized one; roughly 80% of Dutch municipalities hold an HR21 license).Goals OkrMeasurable OKR tracking as a new member of the performance-review family (ADR-001 Rule 6): an Objective with several measurable KeyResults, each carrying a numeric start/target/current value and a writer-maintained progress reading tracked *between* reviews and optionally rolled up under a ReviewCycle.Hours LeafAnswer one question about any object in the fleet: how much time has been spent on it, by everyone and by you, and let a reader add to that figure without leaving the page they are on.Hr SignalsStop temporary contracts from lapsing unnoticed (Spectr hrmq-canon-hr-signals, 3/9 competitor coverage): the rule corpus signals a temporary contract ending within 60 days that has no successor, and enforces the statutory aanzegplicht (written notice one month before the end of a ≥6-month fixed term, BW 7:668.Hris API PublicGive external systems access to HR data through the existing API, and keep a record of who has it.Hrm Rule EngineHumaniq audits its HR, labour and payroll data against a versioned corpus of machine-checkable rules drawn from EU labour directives, ILO core conventions, GDPR for employee data, occupational health & safety, national labour law (NL first, then DE/FR/BE) and payroll / wage-tax & social-security compliance.Hrmq I18n Locale CompletenessBring hrmq onto hydra ADR-007: English sentence-case strings are the app's i18n source keys, and l10n/en.json + l10n/nl.json both exist with an identical key set.Hrmq Personal DashboardGive hrmq's "Mijn HR" entry a personal landing surface: a type: "dashboard" page at /mijn whose every widget binds only the caller's own records, so an employee opening "Mijn HR" sees their own situation instead of a fold-out of nine links.Humaniq Docudesk DocumentsGenerate the standard Dutch HR documents (arbeidsovereenkomst, aanbiedingsbrief, werkgeversverklaring, getuigschrift) from templates hosted in docudesk (namespace: hrmq), by calling docudesk's DocumentService::generateDocument() on the same instance (never HTTP), storing the returned PDF on a new GeneratedDocument record via OpenRegister's FileService, degrading gracefully to skipped-no-docudesk when docudesk is absent, and giving EmploymentContract.writtenContract machine-checked document evidence (nl-contract-schriftelijk).Humaniq Employee RelationsSee the employee behind a timesheet or expense claim in the related panel of its detail page.Humaniq I18n Form SurfaceFinish what the manifest half started.Humaniq MCP SurfaceHumaniq's agent-facing MCP tool surface under ADR-063: a deliberately thin, read-only allowlist and the standing refusals over remuneration, health, recruitment and worker-monitoring data.Humaniq Timesheet Approved Typed EventGive humaniq's approved-timesheet event a consumption path a sibling Conduction app can actually use.Interview SchedulingClose the gap recruiting-ats-basic's uitnodigen transition docblock states plainly ("No calendar/scheduling integration in the MVP"): today an interview invitation is a bare status flip with no artifact, so nobody on the recruiting team can see from a calendar when and with whom a gesprek is actually happening.Jurisdiction PacksHumaniq owns the first open-source Dutch payroll engine, and its *parameters* were already data (lib/Standards/tables/nl-2026.json).Leave Accrual JobThe leave-verzuim MVP shipped the LeaveBalance ledger.Leave Buy SellHumaniq's leave surface (leave-management) gives employees a LeaveRequest workflow and a LeaveBalance ledger with a declaratively calculated remainingHours (entitledHours + bovenwettelijkHours − usedHours), guarded by the three mandatory NL leave rules in lib/Standards/rules/labour.json (nl-verlof-wettelijk-minimum, nl-verlof-saldo-niet-negatief, nl-verlof-vervaltermijn).Leave Calendar NcMake approved absence visible on a plain, shareable Nextcloud calendar.Leave ManagementMake the existing LeaveRequest workflow (shipped schema-only by portal-schemas) a usable back-office feature: the frozen ADR-001 menu-5 Verlof & verzuim surface with request, approval-queue and detail pages bound to the already-declared submit→approve/reject lifecycle, a LeaveBalance schema with a declaratively calculated remaining-hours figure (statutory minimum 4× contractual weekly hours per BW art.Loonaangifte Filing LifecycleTurn the passive LoonaangifteFiling record into a real Dutch wage-tax filing workflow: a declarative create→review→confirm→send state machine, first-class tijdvakcode data per Belastingdienst LH 210, statutory deadline derivation (period end + one calendar month, no weekend extension) and alerting as versioned machine-checkable corpus rules, and filing pages that drive the lifecycle.LoonbeslagHumaniq computes NL gross-to-net (PayrollCalculator, pure, table-driven) and already folds current-run, post-tax components onto Payslip.nettoPay without ever re-invoking the calculator (retro-adjustments, leave-buy-sell).Mijn Hr Self ServiceGive humaniq's logged-in employees an in-app self-service surface per ADR-001 Rule 2 (role-filtered wrapper, never a sibling portal app): Mijn HR index pages that show only the current user's records.Mileage RulesBring the Belastingdienst's onbelaste kilometervergoeding.Mss Team ScopeGive managers a team-scoped self-service surface per ADR-001 Rule 2 (Dashboard widgets + scoped acties inside existing menus.Multi AdministratieLet one humaniq instance carry multiple administraties (companies/clients).Offboarding WizardGive humaniq its departure surface, closing the hire-to-leave case bracket the hr-onboarding fragment opened: one Offboarding case per departure with a deterministic, declarative lifecycle whose milestones (departure announced, afronding planned, eindafrekening ready, completed) are gated by concrete checklist and eindafrekening fields.Offer EsignClose the MVP gap the Application.aanbieden transition's own docblock names ("An offer is extended to the candidate.Onboarding WizardGive humaniq its first onboarding surface: one Onboarding case per hire with a deterministic, declarative lifecycle whose milestones (contract signed, data validated, ready for first workday, proeftijd running, completed) are gated by concrete checklist fields.Org Chart BasicGive humaniq its first organisational model: an OrgUnit hierarchy (self-referencing parent, type, cost-center, manager) and effective-dated OrgAssignment placements linking employees to units, in a new hr-org register fragment.Payroll Core EngineThe strategic centerpiece: the only open-source Dutch payroll calculation engine (verified 2026-07-12/13.Payroll Core SchemaChain head for the open-source Dutch payroll engine (Spectr hrmq-canon-payroll-engine, P1-strategic; no OSS NL payroll engine exists.Payroll Glpost ShillinqMake payroll flow automatically into the books.Payroll Mutation ReportsThe one thing a loonadministrateur does before flipping a run from draft to approved: compare it to the previous period.Payroll SEPA Netpay ShillinqPay the salaries an approved payroll run owes.Payslip PDF DocudeskGive every Payslip a downloadable loonstrook PDF and every employee-year a jaaropgaaf PDF.Pension Filing Upa MvpGive humaniq its first sector-pension filing surface (UPA.Performance Review CyclesThe orchestration container of the performance-review MVP: a generic ReviewCycle (jaargesprek / beoordeling / tussentijds) with a declarative open/close lifecycle, surfaced as SUB_PAGEs under the existing Personeel group per ADR-001 Rule 6.Performance ReviewsThe dossier half of the performance-review MVP: the PerformanceReview object per employee per cycle, carrying rating, sterktes, ontwikkelpunten, afspraken and a goals array **inside** the review (one dossier document, one lifecycle, one retention context.Personnel Retention ExpiryThe other end of the retention clock avg-dsr REQ-DSR-005 starts.Portal ContributionHumaniq contributes to portaliq, the shared external portal for people without Nextcloud accounts (hydra ADR-046 + 2026-07-06 amendment, contribution contract v2): external employees get UUID-scoped self-service over their own employee record, payslips, employment contracts, timesheets, expenses and leave requests (with strict create whitelists for timesheet/expense/leave), and clients get a read-only view over the timesheets whose billable hours they review.Portal SchemasDeclarative register foundation for humaniq's Wave-1 contribution to portaliq, the shared external portal for people without Nextcloud accounts (hydra ADR-046 + 2026-07-06 amendment).Proforma PayslipHR admins repeatedly need the answer to a hypothetical ("if I offer €4.100 bruto wit, what is the net?", "what does an AOW-age hire net?", "how does a 0,8 part-time factor land?") without creating throw-away Employee/Contract/Run/Payslip records.Receipt OCRGive every Expense with an attached receiptFile an automatic prefill of its still-empty amount/expenseDate/vendor/vatAmount fields, extracted by docudesk's FinancialExtractionService from the receipt, with confidence and provenance recorded so a reviewer can tell a value was machine-suggested rather than hand-entered.Recruiting ApplicationsThe application half of the recruiting MVP: candidate PII lives inside the Application object (AVG data-minimisation.Recruiting VacanciesOpen the frozen ADR-001 menu-6 Onboarding & ATS surface with the vacancy half of the recruiting MVP: a Vacancy schema with a declarative publish lifecycle (publiceren stamps publishedDate on the carrying write; sluiten closes; terminal), index/detail pages with the per-vacancy candidate list via the related panel, and a seeded published vacancy.Retro AdjustmentsThe payroll engine (payroll-core-engine) seals a period's payslips into a run whose engineVersion/calculatedAt are stamped and whose non-draft states refuse recalculation.RosteringHumaniq administers who is employed, what they clocked and what they claim, but had no forward-looking plan.Sick Pay CalcHumaniq already modelled the *administrative* side of sickness (leave-verzuim-mvp's SickLeaveCase + the nl-loondoorbetaling-minimum check) and already had the actual gross-to-net engine (payroll-core-engine's PayrollCalculator/PayrollRunService).Single Person ModesRun a one-person administratie without the screens built for teams.Time AttendanceGive humaniq a raw clock surface with Dutch working-time-law depth no Nextcloud app has (Spectr hrmq-insight-nc-ecosystem-gap: German ArbZG time-compliance apps exist in the ecosystem, nothing covers the Arbeidstijdenwet): a per-employee/per-day AttendanceRecord (clockIn/clockOut/breakMinutes, stored writer-maintained workedHours, declarative open⇄gesloten lifecycle), three versioned machine-checkable ATW rules.Time Entry CaptureHome the fleet's timesheet / hours-capture surface in humaniq (HR's domain) and emit an approved-time-entry event a finance app consumes.Uitzend FlexpoolRun payroll for an uitzendbureau and track the fasensysteem on each agency contract.Verzuim Analytics WidgetsGive HR the absence analytics the stored data already supports: four demonstrably-supported stat widgets on the Dashboard (open ziektegevallen, langdurig verzuim past the WVP 42-weken horizon via an @today-relative date-threshold filter, verlofaanvragen in behandeling, and this-month approved verlofuren as a windowed sum) plus a VerzuimOverzicht open-cases werkvoorraad sorted by the UWV 42-weken deadline (the round-1 LoonaangifteFilings deadline-queue pattern).Verzuim WvpDutch employers must run Wet-verbetering-poortwachter case management from day one of sickness: probleemanalyse in week 6 and plan van aanpak in week 8 (Regeling procesgang eerste en tweede ziektejaar), the 42-weken ziekmelding at UWV (ZW art.Wkr AdministrationWKR is administered from the employer's ledger of allowances/benefits for the WHOLE administration and fiscal year, not from one payslip in isolation: the vrije ruimte is a percentage of the entire fiscal wage bill, and "used" sums every payslip's designated allowances plus every stand-alone declaration.Wnt DisclosureMark topfunctionarissen, record their yearly WNT disclosure, and flag pay above the norm.