Een maatregel wordt geserveerd als zijn canonieke record, plus enkele velden die pas bij het lezen worden toegevoegd (de titel in jouw taal, de versie, de actualiteit en de links). Dezelfde record krijg je met view=full, in de export, in de versies en via de MCP-tool get_subsidy. Onbekend is altijd een expliciete waarde (status: "unknown", de_minimis: null), nooit een gok.
{
"id": "federal:investeringsaftrek",
"slug": "investeringsaftrek",
"external_ids": [
{
"source": "curated_federal",
"id": "investeringsaftrek"
}
],
"titles": {
"nl": "Investeringsaftrek",
"fr": "Déduction pour investissement",
"en": "Investment deduction",
"de": null
},
"summaries": {
"nl": "Fiscale aftrek van FOD Financiën voor vennootschappen, zelfstandigen en landbouwers in België. Dekt 10% tot 40% van de kosten. Doorlopend aan te vragen.",
"fr": "Déduction fiscale du SPF Finances pour les sociétés, indépendants et agriculteurs en Belgique. Couvre de 10 % à 40 % des coûts. Demande possible en continu.",
"en": "Tax deduction from FOD Financiën for companies, self-employed people and farmers in Belgium. Covers 10% to 40% of eligible costs. Applications accepted at any time.",
"de": null
},
"summary_basis": "generated",
"status": "continuous",
"status_basis": "rolling",
"status_note": {
"nl": null,
"fr": null,
"en": null,
"de": null
},
"instrument_type": "tax_deduction",
"issuer": {
"id": "fod-financien",
"name": "FOD Financiën",
"government_level": "federal",
"jurisdiction": "be",
"url": "https://financien.belgium.be"
},
"programme": null,
"application_window": {
"opens_at": null,
"closes_at": null,
"deadlines": [],
"rolling": true,
"budget_exhaustion_possible": false
},
"funding": {
"currency": "EUR",
"rate_min": 10,
"rate_max": 40,
"rates": [
{
"company_size": null,
"rate": 10,
"note": "Basisaftrek: natuurlijke personen en kleine vennootschappen (art. 1:24 WVV)."
},
{
"company_size": null,
"rate": 40,
"note": "Verhoogde thematische aftrek: natuurlijke personen en kleine vennootschappen."
}
],
"amount_min": null,
"amount_max": null,
"annual_cap": null,
"programme_budget": null,
"expected_grants": null,
"min_project_cost": null,
"calculation_basis": {
"nl": null,
"fr": null,
"en": null,
"de": null
},
"de_minimis": null
},
"geography": {
"scope": "national",
"countries": [
"BE"
],
"regions": [],
"provinces": [],
"municipalities": [],
"nis_codes": [],
"nuts_codes": []
},
"eligibility": {
"applicant_types": [
"company",
"self_employed",
"farmer"
],
"company_sizes": [],
"nace": [],
"topics": [
"investment",
"digitalisation",
"energy_efficiency",
"renewable_energy"
],
"eligible_costs": [
"equipment",
"buildings",
"software",
"vehicles",
"intellectual_property"
],
"rules": [
{
"id": "applicant_type",
"field": "company.applicant_type",
"op": "in",
"value": [
"company",
"self_employed",
"farmer"
],
"label": {
"nl": "Nijverheids-, handels- of landbouwonderneming, of vrij beroep",
"fr": "Entreprise industrielle, commerciale ou agricole, ou profession libérale",
"en": "Industrial, commercial or agricultural business, or liberal profession",
"de": null
},
"provenance": {
"method": "curated",
"source_url": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"source_section": "Wie kan de investeringsaftrek genieten?",
"review_status": "verified",
"reviewed_at": "2026-09-27",
"note": null
}
}
],
"rules_basis": "curated",
"confidence": 0.9
},
"application": {
"url": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"channel": "automatic",
"portal": null,
"documents": []
},
"legal_basis": [
"Art. 68 tot 77, 201 en 552 WIB 92",
"Art. 47 tot 49/1 KB/WIB 92"
],
"provenance": {
"source_id": "curated_federal",
"source_url": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"source_license": "FOD Financiën gebruiksvoorwaarden (Creative Commons-0)",
"rights_mode": "facts_only",
"attribution": "Source: FOD Financiën / SPF Finances and RSZ / ONSS official pages; records written by Subsido.",
"source_last_modified_at": "2026-04-01T09:55:52+02:00",
"first_seen_at": "2026-09-27T05:40:02+02:00",
"last_checked_at": "2026-09-27T06:00:12+02:00",
"content_hash": "9f2c…",
"sources": [
{
"source_id": "curated_federal",
"external_id": "investeringsaftrek",
"url": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"role": "primary"
}
],
"fields": {
"status": {
"source_id": "curated_federal",
"method": "derived",
"section": null
},
"funding.rate_max": {
"source_id": "curated_federal",
"method": "curated",
"section": null
}
}
},
"title": "Investment deduction",
"rules_readable": {
"conditions": [
{
"id": "applicant_type",
"field": "company.applicant_type",
"op": "in",
"value": [
"company",
"self_employed",
"farmer"
],
"label": "Industrial, commercial or agricultural business, or liberal profession",
"provenance": {
"method": "curated",
"source_url": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"source_section": "Wie kan de investeringsaftrek genieten?",
"review_status": "verified",
"reviewed_at": "2026-09-27",
"note": null
}
}
],
"text": [
"Industrial, commercial or agricultural business, or liberal profession"
]
},
"summary": "Tax deduction from FOD Financiën for companies, self-employed people and farmers in Belgium. Covers 10% to 40% of eligible costs. Applications accepted at any time.",
"summary_origin": "generated",
"language": "en",
"version": 2,
"first_seen_at": "2026-09-27T05:40:02+02:00",
"last_changed_at": "2026-09-27T05:52:40+02:00",
"withdrawn_at": null,
"freshness": {
"state": "fresh",
"last_successful_fetch": "2026-09-27T06:00:12+02:00",
"expected_refresh_seconds": 86400,
"stale_after_seconds": 259200
},
"links": {
"self": "https://api.subsido.be/v1/subsidies/federal:investeringsaftrek",
"versions": "https://api.subsido.be/v1/subsidies/federal:investeringsaftrek/versions",
"official": "https://financien.belgium.be/nl/ondernemingen/vennootschapsbelasting/belastingvoordelen/investeringsaftrek",
"web": "https://subsido.be/en/grants/investeringsaftrek"
},
"disclaimer": "Independent service. Not affiliated with, endorsed by, or operated by any government or public authority. Eligibility and awards are decided by the competent authority."
}
Illustratieve waarden uit een handmatig samengestelde federale record; de vorm is het contract.
| Veld | Betekenis |
|---|
| id | <bronprefix>:<id bij de bron>, één keer toegekend en nooit gewijzigd. Hoofdletters blijven staan waar de bron ze gebruikt (id’s van Europese topics). |
| slug | Voor URL’s op de website, in de hoofdtaal van de maatregel. Aanvaard in plaats van de id in paden onder /v1/subsidies/{id}, maar niet in filters. Uniek; bewaar toch de id, want alleen van de id is gegarandeerd dat hij nooit verandert. |
| external_ids[] | { source, id }: elke identificatie die een bron voor deze maatregel gebruikt. |
| titles, summaries | Tekst per taal: { nl, fr, en, de }, elk een string of null. Een titel bestaat alleen in de talen waarin de bron hem publiceerde; titels worden niet vertaald. |
| summary_basis | generated (opgesteld uit de gegevens van de record, in het Nederlands, Frans en Engels) of source (de eigen samenvatting van de bron, bij een bron met open_licence, met de ontbrekende talen gegenereerd). Voor de samenvatting in jouw taal zegt summary_origin welke van de twee het is; zie bronnen en herkomst. |
| legal_basis[] | De rechtsteksten waarop de maatregel steunt, zoals de bron ze aanhaalt. |
| Veld | Betekenis |
|---|
| status | forthcomingopencontinuouspausedbudget_exhaustedclosedunknown Of er een aanvraag kan worden ingediend. continuous is een permanente regeling zonder deadline; paused aanvaardt tijdelijk geen aanvragen; budget_exhausted sloot vroeger omdat het budget op is. |
| status_basis | sourcedatesrollingunknown Hoe de status bepaald werd. Een uitdrukkelijke vermelding van de bron gaat voor op een status die uit datums is afgeleid: een oproep kan vroeger sluiten of opgeschort worden terwijl de gepubliceerde deadline nog maanden weg is. |
| status_note | Per taal. Waarom de status is wat hij is, in de woorden van de bron, bij een bron met open_licence die dat vermeldt. |
| Veld | Betekenis |
|---|
| instrument_type | grantrebatevouchertax_credittax_deductiontax_exemptionsocial_security_reductionwage_subsidyloanguaranteerepayable_advanceequityin_kindprizeother |
| issuer | { id, name, government_level, jurisdiction, url }. id is een stabiele slug (vlaio, fod-financien, european-commission); jurisdiction is be, flanders, brussels, wallonia, eu enzovoort. |
| issuer.government_level | eufederalcommunityregionprovincemunicipalityagencyother |
| programme | Een Europese oproep, of een genummerd programma waartoe een nationale maatregel behoort: { name, code, call_id, call_title, topic_id, types_of_action[] }, of null. |
| Veld | Betekenis |
|---|
| opens_at | Wanneer de aanvragen openen, of null. |
| closes_at | De volgende deadline die nog komt, of de laatste als ze allemaal voorbij zijn. Null bij een doorlopende regeling. |
| deadlines[] | { at, date_only, label }, de vroegste eerst. Oproepen in meerdere fases of met cut-offs hebben er meerdere. date_only betekent dat de bron een datum zonder uur gaf; at is dan 23:59:59 Brusselse tijd op die dag. label is bijvoorbeeld “First stage” of “Cut-off 2”. |
| rolling | Aanvragen kunnen op elk moment. |
| budget_exhaustion_possible | Wie eerst komt, eerst maalt: de regeling kan vóór elke deadline sluiten als het budget op is, dus een deadline alleen zegt niet hoeveel tijd er nog is. |
| Veld | Betekenis |
|---|
| currency | Vandaag altijd EUR. |
| rate_min, rate_max | Percentage van de subsidiabele kosten, 0 tot 100. |
| rates[] | { company_size, rate, note }: een percentage dat afhangt van wie aanvraagt. company_size is null als het niveau van iets anders afhangt; de noot zegt dan waarvan. |
| amount_min, amount_max | Per toekenning, in euro. |
| annual_cap | Een plafond per begunstigde per jaar. |
| programme_budget, expected_grants | Het budget van de hele oproep of regeling, en hoeveel toekenningen er verwacht worden. |
| min_project_cost | Een minimale projectomvang om überhaupt in aanmerking te komen. |
| calculation_basis | Tekst per taal die uitlegt hoe het bedrag berekend wordt, als dat bekend is. |
| de_minimis | Toegekend onder de de-minimisverordening (EU 2023/2831, € 300.000 over drie jaar). null: de bron zegt het niet. |
| Veld | Betekenis |
|---|
| scope | eunationalregionalprovinciallocal |
| countries[] | ISO 3166-1 alpha-2. ["BE"] voor elke Belgische maatregel; leeg voor een Europese oproep, waar de lidstaten vanzelf gelden. |
| regions[] | flandersbrusselswallonia |
| provinces[] | antwerplimburgeast_flanderswest_flandersflemish_brabantwalloon_brabanthainautliegeluxembourgnamur |
| municipalities[], nis_codes[], nuts_codes[] | Voor lokale maatregelen, als de bron het vermeldt. |
| Veld | Betekenis |
|---|
| applicant_types[] | companyself_employednon_profitpublic_bodyresearch_organisationindividualfarmersocial_enterprise Leeg betekent dat de bron niet beperkt (of het niet zegt). |
| company_sizes[] | microsmallmediumlarge De Europese kmo-categorieën. Leeg betekent geen beperking op grootte. |
| nace[] | { version, code, mode }: version is 2025 (NACE-BEL 2025) of 2008; code is een code of prefix zonder punten (62, 6201), of een sectieletter; mode is included of excluded. |
| topics[] | Waarvoor de maatregel dient, uit de themalijst hieronder. Alleen voor zoeken en relevantie: een thema is een reden om een maatregel te tonen, nooit een reden waarom een onderneming in aanmerking komt. |
| eligible_costs[] | trainingconsultancyequipmentbuildingssoftwarepersonnelresearchprototypingmarketingtrade_fairstravelintellectual_propertycertificationrecruitmentvehiclesenergysubcontractingother |
| rules[] | Voorwaarden die een machine kan evalueren en die allemaal moeten kloppen. Zie voorwaarden als regels. |
| rules_basis | nonederivedextractedcurated Waar de regels vandaan komen, in stijgende volgorde van betrouwbaarheid: geen regels, alleen gestructureerde velden, ook patronen in de tekst, of opgesteld en nagekeken door een persoon aan de hand van de officiële pagina. |
| confidence | 0 tot 1: in welke mate de regels vatten wat bepaalt wie in aanmerking komt. Handmatig opgestelde regels scoren hoog (standaard 0,9), regels uit gestructureerde velden 0,45, regels uit de tekst 0,6. Een match zegt pas likely_eligible vanaf 0,7. |
Thema’s
Deterministisch: trefwoordstammen in de titel en de tekst, plus de eigen categorieën van de bron, per bron omgezet. Geen enkel model raadt een thema, dus dezelfde invoer geeft altijd dezelfde thema’s.
digitalisationcybersecurityartificial_intelligenceinnovationresearch_developmentenergy_efficiencyrenewable_energyenergyclimate_environmentcircular_economysustainable_mobilityinvestmenttrainingadvice_consultancyinternationalisationhiring_employmentstarting_businessgrowth_scaleupfinancingtransformationagriculturefisheriestourism_hospitalityculture_creativeconstruction_renovationhealth_life_sciencessocial_economyretail_commercewatermanufacturingintellectual_propertyinclusion_diversitycooperationspace_defencecrisis_support
| Veld | Betekenis |
|---|
| url | Waar je aanvraagt, of de officiële pagina die uitlegt hoe. |
| channel | onlineemailportalpaperautomaticunknown |
| portal | De naam van het portaal als er een is (VLAIO e-loket, MyMinfin, het EU Funding & Tenders Portal). Het kanaal automatic betekent dat er geen aanvraag is: de maatregel geldt via de belastingaangifte of vanzelf. |
| documents[] | De documenten die de aanvraag vraagt, als de bron ze oplijst. |
| Veld | Betekenis |
|---|
| source_id, source_url | De primaire bron en de pagina waarvan de record gelezen werd. |
| source_license, rights_mode, attribution | De licentie die geldt, wat de record daardoor bevat (open_licence, facts_only, link_only), en de bronvermelding die de licentie vraagt, als ze die vraagt. Zie bronnen en herkomst. |
| source_last_modified_at | Wanneer de bron zelf zegt dat ze laatst gewijzigd werd; dat is niet het moment waarop ze opgehaald werd. |
| first_seen_at | Wanneer de maatregel voor het eerst gezien werd. |
| last_checked_at | Wanneer een bron laatst opgehaald werd en nog altijd dit zei. Een controle zonder wijziging past dit veld aan en niets anders. |
| content_hash | SHA-256 van de record zonder de vluchtige velden. Verandert precies wanneer de inhoud verandert. |
| sources[] | { source_id, external_id, url, role }: elke bron die de maatregel beschrijft, de primary eerst, dan de secondary. |
| fields | Veldpad naar { source_id, method, section }, voor de velden waarop een beslissing steunt. method is een van structuredhtml_sectiontext_patternsource_categorykeywordscuratedderived |
| Veld | Betekenis |
|---|
| title, summary | In de gevraagde taal (lang), anders in het Nederlands, Frans, Engels of Duits, naargelang wat er bestaat. title valt terug op de id. |
| summary_origin | source of generated: of de samenvatting in deze taal de eigen tekst van de bron is, of opgesteld uit de gegevens van de record. Een record met summary_basis: "source" kan in een taal die de bron niet schreef toch een gegenereerde samenvatting geven. |
| rules_readable | { conditions, text }: elke voorwaarde uit eligibility.rules op een rij, met het label in jouw taal en de herkomst, en elke regel van het hoogste niveau als zin. Om de regels te tonen zonder de boom te doorlopen. |
| language | De taal die je vroeg. |
| version | Het huidige versienummer, vanaf 1. |
| first_seen_at, last_changed_at | Wanneer de maatregel verscheen, en wanneer de inhoud laatst veranderde. |
| withdrawn_at | Wanneer de bron hem niet meer publiceerde, of null. |
| freshness | { state, last_successful_fetch, expected_refresh_seconds, stale_after_seconds } van de bron. state is een van freshdelayedstalesource_unavailableparse_errorneeds_reviewdisablednever_run |
| links | self en versions in de API, official (de pagina van de overheid) en web (de maatregel op de website, in jouw taal). |
| disclaimer | De onafhankelijkheidsverklaring. |
| merged_from | Alleen als je een id vroeg die in deze record werd samengevoegd. |
| as_of, valid_from, valid_to | Alleen met as_of, of bij een versie. |
| cause, changes | Alleen bij GET /v1/subsidies/{id}/versions/{version}. |
Lijsten gebruiken standaard view=compact: id, slug, title, summary, summary_origin, titles, status, instrument_type, issuer, scope, regions, topics, company_sizes, opens_at, closes_at, rolling, rate_max, amount_max, annual_cap, rules_basis, source_id, rights_mode, version, last_changed_at, last_checked_at, freshness en links. De geneste velden worden naar boven gehaald (closes_at is application_window.closes_at).
Verwerk antwoorden defensief
Nieuwe velden en nieuwe waarden in een vaste lijst kunnen op elk moment in /v1 verschijnen. Negeer velden die je niet kent, en behandel een onbekende waarde als other of unknown in plaats van te falen. Hernoemen of verwijderen zou een nieuwe API-versie zijn.
- Elke woordenlijst, met labels in drie talen, staat op
GET /v1/taxonomy. - Dezelfde structuren staan in het OpenAPI-document als
Subsidy, SubsidyFull en SubsidyCompact; zie de referentie.