{
  "$schema": "https://govschema.org/spec/v0.3/govschema.schema.json",
  "govschemaVersion": "0.3.0",
  "id": "nl/rvig/national-identity-card-application",
  "version": "1.0.0",
  "title": "Netherlands National Identity Card Application/Renewal (Nederlandse Identiteitskaart)",
  "description": "Apply for a first Dutch national identity card (Nederlandse identiteitskaart, ID-kaart) or renew an existing one in person at the applicant's municipality (gemeente) passport/ID desk (Burgerzaken), under the Paspoortwet 1991 and the Paspoortuitvoeringsregeling Nederland (PUN), for which the Rijksdienst voor Identiteitsgegevens (RvIG) sets the nationally standardised data and process requirements on behalf of the Ministry of the Interior and Kingdom Relations (BZK) — the same legal and institutional framework as nl/rvig/passport-application. There is no online submission channel for the application itself: the applicant (and, for a child under 12, at least one parent/guardian) must attend in person, presenting an identity document and giving fingerprints (age 12+) that are checked against the municipality's population register (Basisregistratie Personen, BRP). The identity card is a distinct legal document from the passport — usable as a travel document within the Schengen area and some other European countries, but not accepted for travel outside Europe, where a passport is required — and, unlike the passport, requires parental/guardian consent only for applicants under 12, not the full under-18 population. This document models the citizenship and registration eligibility gates, the applicant's core identifying data, the under-12 guardian consent path (including the case where a co-holder of parental authority cannot attend in person), and the service options every applicant chooses (processing speed and delivery method). It does not model: the Nederlands paspoort (a related but distinct product with its own GovSchema document, nl/rvig/passport-application), the nooddocument (emergency travel document) or alien/refugee identity-document processes, the eID online-authentication activation that happens after the card is issued, or fee amounts, which vary by age tier and change over time and are deliberately not encoded here as a single authoritative figure, consistent with de/bmi/national-identity-card-application. It does not submit the application; the live gemeente and rijksoverheid.nl sources are always authoritative — see VERIFICATION.md.",
  "status": "draft",
  "jurisdiction": {
    "country": "NL",
    "level": "national"
  },
  "authority": {
    "name": "Gemeente (Burgerzaken/paspoortbalie), under the Paspoortwet 1991 and the Paspoortuitvoeringsregeling Nederland (PUN)",
    "abbreviation": "RvIG",
    "url": "https://www.rvig.nl"
  },
  "process": {
    "type": "application",
    "language": "nl-NL"
  },
  "source": {
    "url": "https://loket.digitaal.utrecht.nl/nl/producten/paspoort-of-identiteitskaart-aanvragen",
    "retrievedAt": "2026-07-03",
    "documentRef": "No form number — in-person application recorded directly at the gemeente passport/ID desk. Under-12 guardian-consent branch uses the same national 'Toestemming ouder/gezaghebber voor minderjarige aanvrager(s)' form (Stcrt. 2008, nr. 115, Ministerie van Algemene Zaken) as nl/rvig/passport-application, which itself offers an application-type checkbox including 'identiteitskaart'."
  },
  "verification": {
    "method": "manual-source-review-v1",
    "lastVerifiedAt": "2026-07-03",
    "verifiedBy": "GovSchema Engineering (Standards Engineer)",
    "nextReviewBy": "2027-01-01",
    "notes": "Source-derived reference schema authored from the municipality of Utrecht's official digital loket page (fetched directly, HTTP 200) — the same page nl/rvig/passport-application used, since Utrecht presents passport and ID-card applications as one combined service page. Cross-checked against three independent rijksoverheid.nl national Q&A pages: 'Waar en hoe kan ik een paspoort of identiteitskaart aanvragen?' (eligibility, registration, in-person requirement, identical for both documents); 'Hoe lang is een paspoort of Nederlandse identiteitskaart geldig?' (validity: 10 years at 18+, 5 years under 18, identical for both documents); and 'Heeft mijn kind een eigen paspoort of identiteitskaart nodig?', which states the ID-card-specific consent rule directly: parental/guardian consent is required for an ID card only under age 12, whereas passport consent is required for the full under-18 population — resolving an ambiguity nl/rvig/passport-application's own VERIFICATION.md had flagged as unconfirmed (Utrecht's shared page frames its guardian-consent walkthrough under an 'Aanvragen (kind jonger dan 12 jaar)' subheading because that threshold is the ID-card rule, not the passport rule). The under-12 guardian-consent fields are additionally cross-checked against the national consent form's own bilingual field text (Stcrt. 2008, nr. 115), previously extracted via zlib-stream text extraction for nl/rvig/passport-application, which offers an application-type checkbox including 'identiteitskaart' alongside 'paspoort'. Status remains 'draft'. See VERIFICATION.md."
  },
  "maturity": {
    "level": "structural-reference",
    "criteria": {
      "structuralReference": true,
      "verifiedSchema": false,
      "agentReadySchema": false,
      "executionTestedSchema": false
    },
    "method": "maturity-self-assessment-v1",
    "assertedBy": "GovSchema Engineering (Standards Engineer)",
    "assertedAt": "2026-07-03"
  },
  "license": "CC-BY-4.0",
  "fields": [
    {
      "name": "isDutchNational",
      "label": "Are you a Dutch national?",
      "type": "boolean",
      "required": true,
      "fieldRole": "eligibility",
      "eligibleValues": [true],
      "description": "A Nederlandse identiteitskaart may only be issued to a Dutch national. A non-citizen resident with a valid residence permit does not have a Dutch-national-only identity-card equivalent in this registry; that population's identity documents are out of scope.",
      "sourceRef": "Rijksoverheid.nl 'Waar en hoe kan ik een paspoort of identiteitskaart aanvragen?' — 'Alleen Nederlanders kunnen een paspoort aanvragen' (stated as applying to both document types); also confirmed on the Utrecht loket page"
    },
    {
      "name": "registeredInApplyingMunicipality",
      "label": "Are you applying at the municipality (gemeente) where you are registered?",
      "type": "boolean",
      "required": true,
      "fieldRole": "eligibility",
      "eligibleValues": [true],
      "description": "The applicant must apply at the gemeente where they are registered in the Basisregistratie Personen (BRP). Dutch nationals living abroad, or those not registered anywhere in the Netherlands, apply at a Dutch embassy/consulate or a designated border municipality instead — not modelled here.",
      "sourceRef": "Rijksoverheid.nl 'Waar en hoe kan ik een paspoort of identiteitskaart aanvragen?' — 'U vraagt een paspoort aan bij de gemeente waar u staat ingeschreven'"
    },
    {
      "name": "lastName",
      "label": "Last name",
      "type": "string",
      "required": true,
      "classification": "pii",
      "description": "As held in the Basisregistratie Personen (BRP) and confirmed against the identity document presented at the appointment, not freely declared by the applicant — see VERIFICATION.md.",
      "sourceRef": "Utrecht loket page — required documents confirm the applicant's registered personal data",
      "validation": { "minLength": 1, "maxLength": 100 }
    },
    {
      "name": "firstNames",
      "label": "First name(s)",
      "type": "string",
      "required": true,
      "classification": "pii",
      "description": "As held in the Basisregistratie Personen (BRP) and confirmed against the identity document presented at the appointment — see VERIFICATION.md.",
      "sourceRef": "Utrecht loket page — required documents confirm the applicant's registered personal data",
      "validation": { "minLength": 1, "maxLength": 100 }
    },
    {
      "name": "dateOfBirth",
      "label": "Date of birth",
      "type": "date",
      "required": true,
      "classification": "sensitive-pii",
      "description": "YYYY-MM-DD. Determines the age-tiered fee and validity period (5 years under 18, 10 years at 18 or older), whether guardian consent is required (under 12 only, for this document), and whether fingerprints are captured (12 and older).",
      "sourceRef": "Rijksoverheid.nl 'Hoe lang is een paspoort of Nederlandse identiteitskaart geldig?' — 'Voor personen vanaf 18 jaar is het paspoort of de Nederlandse identiteitskaart (ID-kaart) 10 jaar geldig. Voor personen jonger dan 18 jaar blijft een paspoort of identiteitskaart 5 jaar geldig'; Utrecht loket page — age-tiered fee schedule and fingerprint capture from age 12"
    },
    {
      "name": "placeOfBirth",
      "label": "Place of birth",
      "type": "string",
      "required": true,
      "classification": "pii",
      "description": "As held in the Basisregistratie Personen (BRP), matching the 'Geboorteplaats' field on the national minor-consent form's own applicant data block.",
      "sourceRef": "Toestemmingsverklaring (Stcrt. 2008, nr. 115) — 'Geboorteplaats / Place of birth'",
      "validation": { "minLength": 1, "maxLength": 100 }
    },
    {
      "name": "applicantIsMinor",
      "label": "Is the applicant under 18?",
      "type": "boolean",
      "required": true,
      "description": "Determines the card's validity period (5 years, vs. 10 years at 18+). Unlike the passport, this alone does not require guardian consent for the identity card — see applicantIsUnder12.",
      "sourceRef": "Rijksoverheid.nl 'Hoe lang is een paspoort of Nederlandse identiteitskaart geldig?' — 5-year minor validity tier applies to both documents"
    },
    {
      "name": "applicantIsUnder12",
      "label": "Is the applicant under 12?",
      "type": "boolean",
      "required": false,
      "requiredWhen": { "field": "applicantIsMinor", "equals": true },
      "visibleWhen": { "field": "applicantIsMinor", "equals": true },
      "description": "For this document, parental/legal-guardian (gezaghouder) consent is required only if the applicant is under 12 — not for the full under-18 population as with the passport. A 12-17-year-old applicant may apply for an identity card without guardian consent.",
      "sourceRef": "Rijksoverheid.nl 'Heeft mijn kind een eigen paspoort of identiteitskaart nodig?' — parental-consent comparison table: ID card requires consent under 12 only; passport requires consent under 18"
    },
    {
      "name": "allAuthorizedGuardiansAttendingInPerson",
      "label": "Will every parent/guardian who holds parental authority (gezag) over the child attend the appointment in person?",
      "type": "boolean",
      "required": false,
      "requiredWhen": { "field": "applicantIsUnder12", "equals": true },
      "description": "If true, consent is given in person at the counter and no separate consent form is needed. If false, whichever parent/guardian cannot attend must give consent another way — see absentGuardianConsentMethod.",
      "sourceRef": "Utrecht loket page — 'Parents unable to attend appointments can provide online consent through DigiD... Alternative: Printable PDF forms available for those without DigiD access', presented under the page's under-12 guardian-consent walkthrough"
    },
    {
      "name": "absentGuardianConsentMethod",
      "label": "How will the parent/guardian who cannot attend give consent?",
      "type": "enum",
      "required": false,
      "requiredWhen": {
        "all": [
          { "field": "applicantIsUnder12", "equals": true },
          { "field": "allAuthorizedGuardiansAttendingInPerson", "equals": false }
        ]
      },
      "description": "digid_online_consent = the absent parent/guardian logs in with DigiD (SMS or app verification) and completes the digital toestemmingsverklaring, valid for 3 months from completion. signed_paper_form = the absent parent/guardian signs the printable Toestemmingsverklaring (Stcrt. 2008, nr. 115), valid for 3 months from the signature date, with a copy of their own valid passport/ID photo page attached to verify the signature.",
      "sourceRef": "Utrecht loket page — 'de digitale toestemmingsverklaring... 3 maanden geldig'; 'Alternative: Printable PDF forms available'; Toestemmingsverklaring (Stcrt. 2008, nr. 115) — 'Deze verklaring heeft een geldigheid van drie maanden vanaf datum ondertekening'",
      "validation": { "enum": ["digid_online_consent", "signed_paper_form"] }
    },
    {
      "name": "consentingGuardianRelationship",
      "label": "What is the consenting parent/guardian's relationship to the child?",
      "type": "enum",
      "required": false,
      "requiredWhen": {
        "all": [
          { "field": "applicantIsUnder12", "equals": true },
          { "field": "allAuthorizedGuardiansAttendingInPerson", "equals": false }
        ]
      },
      "description": "Matches the consent form's own checkbox for who is giving consent.",
      "sourceRef": "Toestemmingsverklaring (Stcrt. 2008, nr. 115) — 'Vader / Moeder / Gezaghouder' ('Father / Mother / Legal guardian')",
      "validation": { "enum": ["father", "mother", "legal_guardian"] }
    },
    {
      "name": "processingSpeed",
      "label": "Processing speed",
      "type": "enum",
      "required": true,
      "description": "standard = collection roughly 5-6 working days after application. expedited = spoedaanvraag; if submitted before 14:00, collection from 12:00 the next business day, otherwise two business days later, at a higher fee. Documents not collected within 3 months of readiness are destroyed. The identity card's fee tiers are lower than the passport's at every age/speed combination (e.g. Utrecht's 2026 table: under-18 EUR 43.20 standard / EUR 103.50 expedited; 18+ EUR 80.10 standard / EUR 140.40 expedited).",
      "sourceRef": "Utrecht loket page — identity-card fee table (2026) and processing-time tiers, distinct from the passport's own fee table",
      "validation": { "enum": ["standard", "expedited"] }
    },
    {
      "name": "deliveryMethod",
      "label": "How would you like to receive your identity card?",
      "type": "enum",
      "required": true,
      "description": "pickup_at_municipality = collect the finished card at the gemeente counter (no extra fee). home_delivery = have it delivered, at an additional fee (EUR 19.00 per the Utrecht fee table), not available with expedited processing.",
      "sourceRef": "Utrecht loket page — 'Delivery service costs €19.00'",
      "validation": { "enum": ["pickup_at_municipality", "home_delivery"] }
    }
  ],
  "documents": [
    {
      "id": "existingTravelDocuments",
      "label": "All existing travel documents, including expired ones",
      "category": "identity-document",
      "required": true,
      "belongsTo": "applicant",
      "issuingAuthority": "Any gemeente or Dutch mission that previously issued the applicant a passport or identiteitskaart",
      "sourceRef": "Utrecht loket page — 'Required Documents: All existing travel documents, including expired ones'; Rijksoverheid.nl — 'alle reisdocumenten die in uw bezit zijn'"
    },
    {
      "id": "passportPhoto",
      "label": "Colour passport photo",
      "category": "supporting-evidence",
      "required": true,
      "belongsTo": "applicant",
      "freshness": { "issuedWithin": "P6M" },
      "sourceRef": "Utrecht loket page — 'A color passport photo meeting official standards, maximaal 6 maanden oud'; Rijksoverheid.nl pasfoto-eisen"
    },
    {
      "id": "guardianConsentDocument",
      "label": "Signed or DigiD toestemmingsverklaring from the absent parent/guardian",
      "category": "attestation",
      "required": false,
      "requiredWhen": {
        "all": [
          { "field": "applicantIsUnder12", "equals": true },
          { "field": "allAuthorizedGuardiansAttendingInPerson", "equals": false }
        ]
      },
      "belongsTo": "responsible-party",
      "freshness": { "issuedWithin": "P3M" },
      "statement": "Toestemming ouder/gezaghebber voor minderjarige aanvrager(s) — Parental/Legal guardian consent for minor applicant(s), identiteitskaart option",
      "sourceRef": "Toestemmingsverklaring (Stcrt. 2008, nr. 115); Utrecht loket page — digital and printable consent options under the under-12 walkthrough"
    },
    {
      "id": "guardianIdentityDocumentCopy",
      "label": "Copy of the absent guardian's own valid passport/ID photo page",
      "category": "identity-document",
      "required": false,
      "requiredWhen": {
        "all": [
          { "field": "applicantIsUnder12", "equals": true },
          { "field": "allAuthorizedGuardiansAttendingInPerson", "equals": false },
          { "field": "absentGuardianConsentMethod", "equals": "signed_paper_form" }
        ]
      },
      "belongsTo": "responsible-party",
      "sourceRef": "Toestemmingsverklaring (Stcrt. 2008, nr. 115) — 'Ter controle van mijn handtekening voeg ik een kopie bij van de houderpagina van mijn geldige paspoort' ('To verify my signature I enclose a copy of the biodata page of my valid passport')"
    },
    {
      "id": "applicationFeePayment",
      "label": "Identity card application fee payment",
      "category": "payment",
      "required": true,
      "belongsTo": "applicant",
      "methods": ["debit_card", "cash"],
      "sourceRef": "Utrecht loket page fee table (2026): identity card under 18 EUR 43.20 standard / EUR 103.50 expedited; identity card 18+ EUR 80.10 standard / EUR 140.40 expedited; paid at the appointment by debit card or cash"
    }
  ],
  "steps": [
    {
      "id": "eligibility",
      "title": "Nationality and registration eligibility",
      "fields": ["isDutchNational", "registeredInApplyingMunicipality"],
      "transitions": [
        { "to": null, "exitReason": "not_eligible_non_dutch_national", "when": { "field": "isDutchNational", "equals": false } },
        { "to": null, "exitReason": "not_registered_in_applying_municipality", "when": { "field": "registeredInApplyingMunicipality", "equals": false } },
        { "to": "applicant_details" }
      ]
    },
    {
      "id": "applicant_details",
      "title": "Applicant details",
      "fields": ["lastName", "firstNames", "dateOfBirth", "placeOfBirth", "applicantIsMinor", "applicantIsUnder12"],
      "next": "guardian_consent"
    },
    {
      "id": "guardian_consent",
      "title": "Parental/guardian consent (under 12 only)",
      "fields": ["allAuthorizedGuardiansAttendingInPerson", "absentGuardianConsentMethod", "consentingGuardianRelationship"],
      "next": "service_options"
    },
    {
      "id": "service_options",
      "title": "Service options",
      "fields": ["processingSpeed", "deliveryMethod"]
    }
  ]
}
