Document template · be.accounting.payslip
Payslip — Simple (BE)
- Render-verified
- Commercial
- Version 1.0.0
Belgian simple payslip — mandatory content per AR 27.9.1966 and Loi 12.4.1965
JSON Schema
Fields in this template
Data sent to the API is validated against the template’s JSON Schema before anything is rendered. This template defines 43 fields:
| Field | Required | Type | Description |
|---|---|---|---|
| letter | Required | object | Document metadata |
| letter.place | Required | string | Place of issuance |
| letter.date | Required | date | Issuance date (ISO 8601) |
| letter.language | Required | enum | Language for rendering |
| letter.document_reference | Optional | string | Internal document reference |
| employer | Required | object | Employer identification — Art. 1(1) AR 27.9.1966 |
| employer.name | Required | string | Legal name of the employer |
| employer.legal_form | Optional | string | Legal form (SRL, SA, SNC, etc.) |
| employer.address | Required | string | Full postal address |
| employer.vat_number | Required | string | Belgian VAT number (BE0xxxxxxxxx) |
| employer.bce_number | Required | string | BCE/KBO number (0xxx.xxx.xxx) |
| employer.onss_number | Required | string | NSSO employer registration number |
| employer.joint_committee | Optional | string | Applicable joint committee (commission paritaire / paritair comité) |
| employer.phone | Optional | string | |
| employer.email | Optional | string | |
| employee | Required | object | Employee identification — Art. 1(2) AR 27.9.1966 |
| employee.name | Required | string | Full name of the employee |
| employee.niss | Optional | string | Belgian National Social Security Number (numéro NISS / INSZ-nummer) |
| employee.function | Required | string | Job title / function |
| employee.status | Required | enum | Employment status (employé / ouvrier) |
| employee.start_date | Optional | date | Employment start date |
| employee.iban | Optional | string | IBAN for salary payment — protection de la rémunération (Loi 12.4.1965 Art. 5) |
| employee.cost_center | Optional | string | Internal cost center |
| payslip | Required | object | Payslip computation — Art. 1 AR 27.9.1966 mandatory content |
| payslip.period | Required | string | Pay period (e.g. 'March 2026', '2026-03') |
| payslip.payment_date | Required | date | Actual payment date |
| payslip.base_salary | Required | number | Base contractual gross salary (EUR) |
| payslip.gross_additions | Optional | array of object | Additional gross components (ATN, bonuses, overtime, etc.) |
| payslip.total_gross | Required | number | Total gross salary (base + additions) subject to NSSO |
| payslip.onss_rate | Required | number | Employee NSSO rate (%) — standard 13.07% |
+13 more fields — the full JSON Schema is available in the dashboard and via the API.
POST /render
Generate it
One POST /render call: send your JSON, get the finished PDF back. Or skip the JSON entirely and describe the document in plain language on chut.app.
curl -X POST https://api.papii.eu/render \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "be.accounting.payslip",
"data": { ... },
"options": {"language": "en"}
}' -o payslip.pdf Frequently asked questions
What is “Payslip — Simple (BE)”?
Belgian simple payslip — mandatory content per AR 27.9.1966 and Loi 12.4.1965 On papii this document is available as template be.accounting.payslip: a JSON Schema plus a deterministic PDF renderer, so the same data always produces the same document.
Can I generate a Payslip — Simple (BE) with AI?
Yes. chut.app — the AI back office papii powers — fills this template from a plain-language description: you describe the document in one sentence, the AI structures the data, papii validates it against the schema and renders the PDF. Developers can also call the papii API directly with structured JSON.
Is the Payslip — Simple (BE) template legally compliant?
This template is render-verified: its schema, sample data and PDF output are automatically tested on every release. It is published with status “ready”, meaning it has not yet been through papii’s final legal review. Where it references specific legislation, that is stated in the template description — always have a professional check documents with legal effect before relying on them.