Case Fields Reference
Dynamic Discovery
Use GET /payrolls/{payrollId}/cases/schema to dynamically discover all available case fields as a JSON Schema. This endpoint returns field types, defaults, and localizations directly from the regulation — no userId or employeeId needed. Ideal for SDK generation and form building.
The static reference below documents fields for the default Stairling regulation. For always-in-sync field definitions, prefer the /cases/schema endpoint above.
This reference documents all available case fields for payroll calculations. Fields are organized by case name (domain) using the native CaseChangeSetup format.
Payload Structure
When adding case values via POST /payrolls/{payrollId}/cases, use the CaseChangeSetup structure:
Code
Key points:
userId,employeeId,divisionId, andforecastare at the root level- The
caseobject contains acaseName, itsvalues[], and optionalrelatedCases[] - Each value entry requires
caseFieldName,value(always a string), andstart(ISO date) relatedCasesfollows the same structure recursively (caseName + values)
Case Domains
Identite (Identity)
Employee identification information.
| Field Name | Type | Description | Example |
|---|---|---|---|
Nom | string | Last name | "Dupont" |
Prenom | string | First name | "Jean" |
Example:
Code
Remuneration (Compensation)
Salary and hours worked.
| Field Name | Type | Description | Example |
|---|---|---|---|
HeuresTravaillees | number | Hours worked in the period | "151.67" |
TauxHoraire | number | Hourly rate in euros | "12.50" |
Example:
Code
Calculation
Base salary = HeuresTravaillees × TauxHoraire
Example: 151.67 × 12.50 = 1,895.88 €
Contrat (Employment Contract)
Employment contract information.
| Field Name | Type | Description | Example |
|---|---|---|---|
DateDebutContrat | date | Contract start date | "2024-01-15" |
DateFinContrat | date | Contract end date (omit if ongoing) | "2025-12-31" |
Example:
Code
Frais (Expenses & Allowances)
Meal allowances, mileage, and adjustments.
| Field Name | Type | Description | Example |
|---|---|---|---|
NombreRepas | number | Number of meal allowances | "15" |
MontantRepas | number | Amount per meal in euros | "9.50" |
IndemniteKilometrique | number | Mileage allowance in euros | "250" |
Regularisation | number | Net salary adjustment (+/-) | "50.00" |
Example:
Code
Regularisation
The Regularisation field allows positive or negative adjustments that appear directly on the payslip. Use it for:
- Expense reimbursements
- Salary corrections
- One-time bonuses
- Deductions
PAS (Withholding Tax)
French withholding tax (Prélèvement À la Source).
| Field Name | Type | Description | Example |
|---|---|---|---|
TauxPAS | number | Withholding tax rate (0-1) | "0.05" |
Example:
Code
Rate Format
The TauxPAS must be a decimal between 0 and 1.
- 5% =
"0.05" - 15% =
"0.15" - 30% =
"0.30"
PrevoyanceMutuelle (Benefits)
Health insurance and social security contributions.
| Field Name | Type | Description | Example |
|---|---|---|---|
MutuelleObligatoire | number | Mandatory health insurance (€) | "24.75" |
MutuelleFacultative | number | Optional health insurance (€) | "49.50" |
TauxPrevoyance | number | Social security rate (0-1) | "0.0089" |
Example:
Code
Absences
Sick leave, work accidents, and unpaid leave.
| Field Name | Type | Description | Example |
|---|---|---|---|
HeuresAbsenceMaladie | number | Hours of sick leave | "7" |
TauxHoraireAbsence | number | Hourly rate for absence valuation | "11.88" |
MontantAbsenceMaladie | number | Total sick leave deduction amount | "83.16" |
MontantAbsenceATMP | number | Total work accident deduction amount | "0" |
MontantAbsenceSansSolde | number | Total unpaid leave deduction amount | "0" |
Example:
Code
Complete Example
Code
Quick Reference Table
| Case Name | Field Name | Type | Description |
|---|---|---|---|
Identite | Nom | string | Last name |
Identite | Prenom | string | First name |
Remuneration | HeuresTravaillees | number | Hours worked |
Remuneration | TauxHoraire | number | Hourly rate |
Contrat | DateDebutContrat | date | Contract start date |
Contrat | DateFinContrat | date | Contract end date |
Frais | NombreRepas | number | Meal count |
Frais | MontantRepas | number | Meal amount |
Frais | IndemniteKilometrique | number | Mileage |
Frais | Regularisation | number | Adjustment |
PAS | TauxPAS | number | Tax rate |
PrevoyanceMutuelle | MutuelleObligatoire | number | Mandatory insurance |
PrevoyanceMutuelle | MutuelleFacultative | number | Optional insurance |
PrevoyanceMutuelle | TauxPrevoyance | number | Prevoyance rate |
Absences | HeuresAbsenceMaladie | number | Sick leave hours |
Absences | TauxHoraireAbsence | number | Absence hourly rate |
Absences | MontantAbsenceMaladie | number | Sick leave deduction |
Absences | MontantAbsenceATMP | number | Work accident deduction |
Absences | MontantAbsenceSansSolde | number | Unpaid leave deduction |
Output: Wage Type Results
After running a payrun, you receive calculated wage types:
| Wage Type | Name | Description |
|---|---|---|
| 100 | SalaireBase | Base salary |
| 600 | IndemniteRepas | Meal allowance |
| 611 | IndemniteKilometrique | Mileage allowance |
| 650 | Regularisation | Salary adjustment |
| 900 | TotalBrut | Total gross salary |
| 910 | TotalCotisationsSalariales | Employee contributions |
| 920 | TotalCotisationsPatronales | Employer contributions |
| 930 | TotalAllegements | Tax credits |
| 950 | NetImposable | Taxable net income |
| 960 | PAS | Withholding tax |
| 980 | TotalIndemnites | Total allowances |
| 990 | NetAPayer | Net pay |
Next Steps
- Quickstart - Complete workflow example
- Real vs Forecast Mode - Execution modes
- API Reference - All endpoints