# Swiss HR Easy > Documentation for Swiss HR Easy — the HR platform for Swiss organizations. - [Swiss HR Easy](https://docs.hr-easy.nlead.ch/index.md): The HR platform built for Swiss employment law — recruitment, employee lifecycle, time, payroll, and everything in between. - [Quickstart](https://docs.hr-easy.nlead.ch/quickstart.md): From a freshly provisioned installation to your first published position and first hire. - [Architecture](https://docs.hr-easy.nlead.ch/concepts/architecture.md): How Swiss HR Easy is put together — deployment model, module structure, and the shared layer. - [Surfaces](https://docs.hr-easy.nlead.ch/concepts/surfaces.md): The three front ends — dashboard, portal, and the iOS app — and who lands where. - [Roles and permissions](https://docs.hr-easy.nlead.ch/concepts/roles-and-permissions.md): The seven roles, the hierarchy, and the permission grants that decide who sees what. - [Legal entities](https://docs.hr-easy.nlead.ch/concepts/legal-entities.md): Multiple Rechtsträger inside one installation — when you need them and how scoping works. - [Languages](https://docs.hr-easy.nlead.ch/concepts/languages.md): German, French and English — and the difference between UI chrome and authored content. - [Design philosophy](https://docs.hr-easy.nlead.ch/concepts/design-philosophy.md): The Compassionate Systems Framework — and the things this product deliberately will not build. - [Glossary](https://docs.hr-easy.nlead.ch/concepts/glossary.md): Swiss HR and payroll terms used across the product, in German and English. - [Recruitment overview](https://docs.hr-easy.nlead.ch/guides/recruitment/overview.md): From an open headcount to a signed contract — how hiring flows through the platform. - [Positions](https://docs.hr-easy.nlead.ch/guides/recruitment/positions.md): Creating, describing, and publishing an opening. - [Job distribution](https://docs.hr-easy.nlead.ch/guides/recruitment/job-distribution.md): The careers page, the SECO Job-Room, and multi-channel posting. - [Application pipeline](https://docs.hr-easy.nlead.ch/guides/recruitment/pipeline.md): The Kanban board, configurable stages, mailbox integration, and talent pools. - [Interviews and reference checks](https://docs.hr-easy.nlead.ch/guides/recruitment/interviews-and-references.md): Scheduling through Microsoft Graph, and structured reference gathering with versioned question catalogs. - [Hiring decisions](https://docs.hr-easy.nlead.ch/guides/recruitment/decisions.md): Making the call with an explicit method rather than an implicit one. - [Employee lifecycle overview](https://docs.hr-easy.nlead.ch/guides/lifecycle/overview.md): From accepted offer to work certificate — the arc the platform manages. - [Pre-boarding and onboarding](https://docs.hr-easy.nlead.ch/guides/lifecycle/preboarding-and-onboarding.md): The journey between an accepted offer and a productive first week. - [Employee records](https://docs.hr-easy.nlead.ch/guides/lifecycle/employee-records.md): The dossier, dated employment periods, documents, and bulk import. - [Contracts](https://docs.hr-easy.nlead.ch/guides/lifecycle/contracts.md): Templates, placeholder variables, generation, and electronic signature. - [Probation](https://docs.hr-easy.nlead.ch/guides/lifecycle/probation.md): The Probezeit companion — a shared meeting template, not a paper trail. - [Work certificates](https://docs.hr-easy.nlead.ch/guides/lifecycle/certificates.md): Arbeitszeugnis, Zwischenzeugnis and Arbeitsbestätigung — assessment, tone, generation and approval. - [Offboarding](https://docs.hr-easy.nlead.ch/guides/lifecycle/offboarding.md): Ending employment well — checklists, access revocation, final pay, and the exit dialogue. - [Time tracking](https://docs.hr-easy.nlead.ch/guides/time-absence/time-tracking.md): Recording work time, weekly summaries, work schedules, and ArG compliance checks. - [Staff groups and work-time settings](https://docs.hr-easy.nlead.ch/guides/time-absence/staff-groups.md): Personengruppen: group-level time capture, weekly plans, and school openings — configured in one place under Settings → Arbeitszeit. - [Leave and absence](https://docs.hr-easy.nlead.ch/guides/time-absence/leave-and-absence.md): Requesting, approving and tracking absence — balances, day portions, and manager scoping. - [Sick leave](https://docs.hr-easy.nlead.ch/guides/time-absence/sick-leave.md): Reporting illness, medical certificates, and OR Art. 324a salary continuation. - [Public and school holidays](https://docs.hr-easy.nlead.ch/guides/time-absence/holidays.md): Canton-specific public holidays, school holiday calendars, and how they affect time and absence. - [Payroll overview](https://docs.hr-easy.nlead.ch/guides/payroll/overview.md): The Swiss payroll engine — what it covers, how a year runs, and where the boundaries are. - [Payroll master data](https://docs.hr-easy.nlead.ch/guides/payroll/master-data.md): Lohnarten, Kontenplan, Versicherungen and the tenant Stammdaten the engine reads. - [The monthly run](https://docs.hr-easy.nlead.ch/guides/payroll/monthly-run.md): Opening, computing, correcting, locking and dispatching a Lohnabrechnung. - [Payments and accounting](https://docs.hr-easy.nlead.ch/guides/payroll/payments-and-accounting.md): pain.001 payment batches, camt reconciliation, FIBU transfer, and authority notifications. - [Year end](https://docs.hr-easy.nlead.ch/guides/payroll/year-end.md): Lohnausweis, Quellensteuerbescheinigung, the Swissdec ELM Jahresmeldung, and AHV splitting. - [bexio integration](https://docs.hr-easy.nlead.ch/guides/payroll/bexio.md): Two-way sync of employees, hours and leave with bexio Lohn, plus payslip import and reconciliation. - [Budgeting](https://docs.hr-easy.nlead.ch/guides/finance/budgeting.md): Five budgeting methods, rolling forecasts, and participatory proposals. - [Expenses](https://docs.hr-easy.nlead.ch/guides/finance/expenses.md): Receipt capture with OCR, Swiss categories and per-diem rates, two-level approval, and payroll reimbursement. - [Feedback](https://docs.hr-easy.nlead.ch/guides/people/feedback.md): Cycles, continuous feedforward, growth journeys, and team vitality — without ratings. - [Employee surveys](https://docs.hr-easy.nlead.ch/guides/people/surveys.md): Mitarbeiterumfragen with real anonymity, k-anonymity thresholds, and an AI report that shows its basis. - [Compensation](https://docs.hr-easy.nlead.ch/guides/people/compensation.md): Role classification, salary bands, dated assignments, and the employee self-view. - [Decision making](https://docs.hr-easy.nlead.ch/guides/people/decision-making.md): Seven methods that distribute authority and record how a decision was actually reached. - [The self-service portal](https://docs.hr-easy.nlead.ch/guides/portal.md): What applicants and employees do for themselves — on the web and in the iOS app. - [AI features overview](https://docs.hr-easy.nlead.ch/guides/ai/overview.md): Where AI is used in the platform, how models are configured, and what the boundaries are. - [Semantic search](https://docs.hr-easy.nlead.ch/guides/ai/semantic-search.md): Embeddings, multi-dimensional sentiment, semantic event history, and the reasoning layer. - [Document intelligence](https://docs.hr-easy.nlead.ch/guides/ai/document-intelligence.md): Vectorless, reasoning-based retrieval over long Swiss legal and contractual documents. - [AI transparency](https://docs.hr-easy.nlead.ch/guides/ai/transparency.md): What applicants are told, how consent and opt-out work, and why there are no cut-off scores. - [Settings and users](https://docs.hr-easy.nlead.ch/guides/admin/settings-and-users.md): Organization structure, user administration, integrations, branding, and menu configuration. - [Workflows](https://docs.hr-easy.nlead.ch/guides/admin/workflows.md): The visual engine behind approvals, checklists and process automation. - [Notifications and messages](https://docs.hr-easy.nlead.ch/guides/admin/notifications-and-messages.md): The in-app inbox, subscription preferences, delivery channels, and applicant correspondence. - [Reports](https://docs.hr-easy.nlead.ch/guides/admin/reports.md): The recruiting overview, the hiring-manager newsletter, and where the other numbers actually live. - [Audit and data subject requests](https://docs.hr-easy.nlead.ch/guides/admin/audit-and-dsar.md): The audit trail, what it masks, and how DSAR requests are received, verified and executed. - [What's new](https://docs.hr-easy.nlead.ch/whats-new/overview.md): Month-by-month summary of what changed in Swiss HR Easy. - [August 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-08.md): What changed in Swiss HR Easy in August 2026. - [July 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-07.md): What changed in Swiss HR Easy in July 2026. - [June 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-06.md): What changed in Swiss HR Easy in June 2026. - [May 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-05.md): What changed in Swiss HR Easy in May 2026. - [April 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-04.md): What changed in Swiss HR Easy in April 2026. - [March 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-03.md): What changed in Swiss HR Easy in March 2026. - [February 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-02.md): What changed in Swiss HR Easy in February 2026. - [January 2026](https://docs.hr-easy.nlead.ch/whats-new/2026-01.md): What changed in Swiss HR Easy in January 2026. - [Neuigkeiten](https://docs.hr-easy.nlead.ch/whats-new/de/overview.md): Monatliche Übersicht darüber, was sich in Swiss HR Easy geändert hat. - [August 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-08.md): Was sich im August 2026 in Swiss HR Easy geändert hat. - [Juli 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-07.md): Was sich im Juli 2026 in Swiss HR Easy geändert hat. - [Juni 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-06.md): Was sich im Juni 2026 in Swiss HR Easy geändert hat. - [Mai 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-05.md): Was sich im Mai 2026 in Swiss HR Easy geändert hat. - [April 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-04.md): Was sich im April 2026 in Swiss HR Easy geändert hat. - [März 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-03.md): Was sich im März 2026 in Swiss HR Easy geändert hat. - [Februar 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-02.md): Was sich im Februar 2026 in Swiss HR Easy geändert hat. - [Januar 2026](https://docs.hr-easy.nlead.ch/whats-new/de/2026-01.md): Was sich im Januar 2026 in Swiss HR Easy geändert hat. - [Nouveautés](https://docs.hr-easy.nlead.ch/whats-new/fr/overview.md): Résumé mois par mois de ce qui a changé dans Swiss HR Easy. - [Août 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-08.md): Ce qui a changé dans Swiss HR Easy en août 2026. - [Juillet 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-07.md): Ce qui a changé dans Swiss HR Easy en juillet 2026. - [Juin 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-06.md): Ce qui a changé dans Swiss HR Easy en juin 2026. - [Mai 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-05.md): Ce qui a changé dans Swiss HR Easy en mai 2026. - [Avril 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-04.md): Ce qui a changé dans Swiss HR Easy en avril 2026. - [Mars 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-03.md): Ce qui a changé dans Swiss HR Easy en mars 2026. - [Février 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-02.md): Ce qui a changé dans Swiss HR Easy en février 2026. - [Janvier 2026](https://docs.hr-easy.nlead.ch/whats-new/fr/2026-01.md): Ce qui a changé dans Swiss HR Easy en janvier 2026. - [Swiss compliance overview](https://docs.hr-easy.nlead.ch/swiss/overview.md): The legal framework Swiss HR Easy is built around, and where each obligation is implemented. - [Working time (ArG)](https://docs.hr-easy.nlead.ch/swiss/working-time.md): Maximum weekly hours, mandatory breaks, and the annual overtime cap — as the platform enforces them. - [Vacation and leave](https://docs.hr-easy.nlead.ch/swiss/vacation-and-leave.md): OR Art. 329a entitlement, pro-rating, carry-over, and the other statutory absences. - [Probation (OR Art. 335b)](https://docs.hr-easy.nlead.ch/swiss/probation.md): The three-month statutory cap, how the end date is derived, and notice during probation. - [Sick pay (OR Art. 324a)](https://docs.hr-easy.nlead.ch/swiss/sick-pay.md): Salary continuation during illness, the three regional scales, and how KTG insurance changes the picture. - [Stellenmeldepflicht (AIG Art. 21a)](https://docs.hr-easy.nlead.ch/swiss/stellenmeldepflicht.md): The duty to report vacancies, the five-working-day embargo, and the feedback obligation. - [Payroll declarations](https://docs.hr-easy.nlead.ch/swiss/payroll-declarations.md): AHV, Quellensteuer, BVG, EMA, the Lohnausweis, and the Swissdec ELM Jahresmeldung. - [Data protection (nDSG)](https://docs.hr-easy.nlead.ch/swiss/data-protection.md): Swiss data-protection obligations, residency, retention, and how the platform implements them. - [API reference](https://docs.hr-easy.nlead.ch/api-reference/introduction.md): The versioned employee-portal contract consumed by the Swiss HR Easy mobile app. - [Authentication](https://docs.hr-easy.nlead.ch/api-reference/authentication.md): How a caller establishes and carries a session against the portal API. - [Conventions](https://docs.hr-easy.nlead.ch/api-reference/conventions.md): Response envelopes, error shapes, pagination, idempotency, and versioning. - [Get the caller's profile overview.](https://docs.hr-easy.nlead.ch/api-reference/profile/get-the-callers-profile-overview.md) - [Get the caller's salary-continuation entitlement.](https://docs.hr-easy.nlead.ch/api-reference/profile/get-the-callers-salary-continuation-entitlement.md) - [List the caller's leave requests.](https://docs.hr-easy.nlead.ch/api-reference/leave/list-the-callers-leave-requests.md) - [Submit a new leave request for the caller.](https://docs.hr-easy.nlead.ch/api-reference/leave/submit-a-new-leave-request-for-the-caller.md) - [List the caller's leave balances.](https://docs.hr-easy.nlead.ch/api-reference/leave/list-the-callers-leave-balances.md) - [List the caller's time entries.](https://docs.hr-easy.nlead.ch/api-reference/time/list-the-callers-time-entries.md) - [Create a time entry for the caller.](https://docs.hr-easy.nlead.ch/api-reference/time/create-a-time-entry-for-the-caller.md) - [Get the caller's weekly work-hours summary.](https://docs.hr-easy.nlead.ch/api-reference/time/get-the-callers-weekly-work-hours-summary.md) - [Submit the caller's draft time entries for approval.](https://docs.hr-easy.nlead.ch/api-reference/time/submit-the-callers-draft-time-entries-for-approval.md) - [List the caller's sick-leave entries.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/list-the-callers-sick-leave-entries.md) - [Report a new sick-leave absence for the caller.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/report-a-new-sick-leave-absence-for-the-caller.md) - [Get the caller's sick-leave summary.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/get-the-callers-sick-leave-summary.md) - [End one of the caller's ongoing sick-leave absences.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/end-one-of-the-callers-ongoing-sick-leave-absences.md) - [List the medical certificates on one of the caller's sick-leave entries.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/list-the-medical-certificates-on-one-of-the-callers-sick-leave-entries.md) - [Upload a medical certificate (Arztzeugnis) for one of the caller's entries.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/upload-a-medical-certificate-arztzeugnis-for-one-of-the-callers-entries.md) - [Remove a medical certificate from one of the caller's sick-leave entries.](https://docs.hr-easy.nlead.ch/api-reference/sick-leave/remove-a-medical-certificate-from-one-of-the-callers-sick-leave-entries.md) - [List the caller's payslips.](https://docs.hr-easy.nlead.ch/api-reference/payslips/list-the-callers-payslips.md) - [Get the caller's payslip for a specific payroll period.](https://docs.hr-easy.nlead.ch/api-reference/payslips/get-the-callers-payslip-for-a-specific-payroll-period.md) - [Get the caller's compensation role, salary band and placement.](https://docs.hr-easy.nlead.ch/api-reference/compensation/get-the-callers-compensation-role-salary-band-and-placement.md) - [Get the caller's read-only self-service summary (leave balance, timesheet, payslip dates, pending to-dos).](https://docs.hr-easy.nlead.ch/api-reference/summary/get-the-callers-read-only-self-service-summary-leave-balance-timesheet-payslip-dates-pending-to-dos.md) - [Get the current authenticated user, or null when unauthenticated.](https://docs.hr-easy.nlead.ch/api-reference/auth/get-the-current-authenticated-user-or-null-when-unauthenticated.md) - [Clear the caller's session and CSRF cookies.](https://docs.hr-easy.nlead.ch/api-reference/auth/clear-the-callers-session-and-csrf-cookies.md) - [List the days in a window that cost less than a full vacation day.](https://docs.hr-easy.nlead.ch/api-reference/holidays/list-the-days-in-a-window-that-cost-less-than-a-full-vacation-day.md): Cantonal and federal public holidays in [from, to]; for a caller who follows the school calendar, the cantonal school-holiday ranges expanded to one entry per day; and any Betriebsferien day the caller's manager approved them to work through. Every entry means the same thing: **the day costs `isHalf… - [Local setup](https://docs.hr-easy.nlead.ch/development/local-setup.md): Getting a development environment running — everything in Docker. - [Project structure](https://docs.hr-easy.nlead.ch/development/project-structure.md): Where code lives, the module contract, and the rules about crossing boundaries. - [API route conventions](https://docs.hr-easy.nlead.ch/development/api-routes.md): The seven-step skeleton every route handler follows, and why each step is non-negotiable. - [Database](https://docs.hr-easy.nlead.ch/development/database.md): Prisma conventions, the migration workflow, transactions, and the CI guards. - [Security conventions](https://docs.hr-easy.nlead.ch/development/security.md): The eight non-negotiable rules, and the tests every security fix must ship with. - [Frontend conventions](https://docs.hr-easy.nlead.ch/development/frontend.md): UI patterns, forms, data fetching, accessibility, and the TypeScript rules. - [Internationalization](https://docs.hr-easy.nlead.ch/development/i18n.md): next-intl message files, the parity gate, and the rule for applicant- and employee-facing content. - [Testing](https://docs.hr-easy.nlead.ch/development/testing.md): What to test, how, and the gate that stops logic changes shipping without a test. - [The quality gate](https://docs.hr-easy.nlead.ch/development/quality-gate.md): One command that mirrors CI, the guards it runs, and the change-aware fast path. - [Contributing](https://docs.hr-easy.nlead.ch/development/contributing.md): Branching, commit messages, the self-review checklist, and the automated review loop. - [Architecture decisions](https://docs.hr-easy.nlead.ch/development/adr.md): The ADR index — what was decided, when, and what is still open. - [Operations overview](https://docs.hr-easy.nlead.ch/operations/overview.md): What running a Swiss HR Easy installation involves, and where the playbooks are. - [Deployment](https://docs.hr-easy.nlead.ch/operations/deployment.md): Environments, the release pipeline, migrations, and what happens on a production push. - [Environment variables](https://docs.hr-easy.nlead.ch/operations/environment-variables.md): Every setting, what it does, and which must never be set in production. - [Feature flags](https://docs.hr-easy.nlead.ch/operations/feature-flags.md): Switching modules off per installation, and the one flag that ships disabled. - [Monitoring](https://docs.hr-easy.nlead.ch/operations/monitoring.md): Structured logging, Application Insights correlation, alerts, and health checks. - [Runbooks](https://docs.hr-easy.nlead.ch/operations/runbooks.md): The operations playbooks — what exists, and when to reach for each. - [The docs site](https://docs.hr-easy.nlead.ch/operations/docs-site.md): Running this documentation locally, how it deploys, and the docs.hr-easy.nlead.ch custom domain. ## OpenAPI Specs - [openapi](/api-reference/openapi.json) - [portal.v1](/api-reference/portal.v1.json)