Document template · be.reports.aged_payables
Aged Payables — Supplier Ageing Balance (BE)
- Render-verified
- Informational
- Version 1.0.0
Belgian aged payables report per Loi 2.8.2002 (Directive 2011/7/EU). Ageing buckets: 0-30, 31-60, 61-90, >90, disputed. PCMN account 44.
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 33 fields:
| Field | Required | Type | Description |
|---|---|---|---|
| letter | Required | object | |
| letter.place | Required | string | |
| letter.date | Required | date | |
| letter.language | Required | enum | |
| letter.reference | Optional | string | |
| entity | Required | object | |
| entity.name | Required | string | |
| entity.bce_number | Required | string | |
| entity.vat_number | Optional | string | |
| entity.legal_form | Optional | string | |
| entity.prepared_by | Optional | string | |
| report_date | Required | date | Snapshot date for the ageing analysis. |
| late_payment_rate_pct | Optional | number | Current late payment interest rate (BCE rate + 8 pp, Loi 2.8.2002 Art. 6). |
| suppliers | Required | array of object | One row per supplier with outstanding balance. |
| suppliers[].supplier_name | Required | string | |
| suppliers[].vat_number | Optional | string | |
| suppliers[].pcmn_account | Required | string | PCMN sub-account e.g. 440, 441. |
| suppliers[].current | Required | number | Outstanding 0-30 days (EUR). |
| suppliers[].days_31_60 | Required | number | Outstanding 31-60 days (EUR). |
| suppliers[].days_61_90 | Required | number | Outstanding 61-90 days (EUR). |
| suppliers[].days_over_90 | Required | number | Outstanding over 90 days (EUR). |
| suppliers[].disputed | Required | number | Disputed or legal proceedings (EUR). |
| suppliers[].total | Required | number | Total outstanding (EUR). |
| suppliers[].credit_limit | Optional | number | Agreed credit limit (EUR). |
| suppliers[].notes | Optional | string | |
| totals | Optional | object | Column totals for ageing buckets. |
| totals.current | Optional | number | |
| totals.days_31_60 | Optional | number | |
| totals.days_61_90 | Optional | number | |
| totals.days_over_90 | Optional | number |
+3 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.reports.aged_payables",
"data": { ... },
"options": {"language": "en"}
}' -o aged-payables.pdf Frequently asked questions
What is “Aged Payables — Supplier Ageing Balance (BE)”?
Belgian aged payables report per Loi 2.8.2002 (Directive 2011/7/EU). Ageing buckets: 0-30, 31-60, 61-90, >90, disputed. PCMN account 44. On papii this document is available as template be.reports.aged_payables: a JSON Schema plus a deterministic PDF renderer, so the same data always produces the same document.
Can I generate a Aged Payables — Supplier Ageing Balance (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 Aged Payables — Supplier Ageing Balance (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.