Skip to content

Document template · be.accounting.payslip

Payslip — Simple (BE)

  • Render-verified
  • Commercial
  • Version 1.2.0

Belgian simple payslip

Document language: prescribed in the language of the seat region.

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 46 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
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.seat_region Optional enum Linguistic region of the operating seat (Flemish decree of 19 July 1973, decree of the French Community of 30 June 1982, coordinated laws o…
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
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
employee.cost_center Optional string Internal cost center
employee.matricule Optional string Worker's number at the employer (matricule), as the employer assigns it
payslip Required object Payslip computation
payslip.period Required string Pay period (e.g. 'March 2026', '2026-03')
payslip.payment_date Required date Actual payment date
payslip.performance Optional object Extent of the work performed in the pay period, as the employer states it (days and/or hours)
payslip.base_salary Required number Base contractual gross salary (EUR)

+16 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
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 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.