Registry entry

Spain Census Declaration for Natural Persons (Declaración Censal, Modelo 030)

The Agencia Estatal de Administración Tributaria's (AEAT, Spain's tax authority) Modelo 030, 'Declaración censal de alta en el Censo de obligados tributarios, cambio de domicilio y/o de variación de datos personales' — the simplified census declaration a natural person (persona física) not carrying out a business/professional activity uses to register in Spain's Censo de Obligados Tributarios for the first time, request a NIF when they hold no DNI/NIE, change their fiscal or notification domicile, update identifying data (name, nationality, birth data), report a change of civil status, or add/withdraw a phone number or email address AEAT may use for informational notices. A single Section 1 ('Causas de presentación') carries fifteen checkboxes — one pair (interesado/cónyuge) per cause, plus one interesado-only cause for phone/email notices — that determine which of the form's other conditional sections (2/3 identifying data, 5 fiscal domicile, 9 civil status) are completed; Sections 4 (phone/email), 6 (foreign domicile), 7 (notification domicile), and 8 (representative) are available regardless of which Section 1 cause is marked. The form is genuinely downloadable and fillable (a 4-page AcroForm PDF hosted directly on sede.agenciatributaria.gob.es, HTTP 200, no login/CAPTCHA/WAF gate; pages 3-4 are an identical duplicate 'Ejemplar para el interesado' copy of pages 1-2's 'Ejemplar para la Administración', not modeled separately). This document opens Spain as a new jurisdiction in this registry. Deliberately does not model: the electronic-filing channel (Modelo 030 can also be submitted through AEAT's authenticated Sede Electrónica, an entirely different, session-based flow this document does not attempt to describe); the external AEAT code tables the 'Clave' fields in Section 8 and the country-code field in Section 6 reference, none of which are reproduced inside this 2-page form; and the physical-signature line itself, which is not applicant-supplied data. GovSchema is independent and is not affiliated with, endorsed by, or operated by the Government of Spain or the Agencia Estatal de Administración Tributaria.

Registry entry

es/aeat/declaracion-censal-personas-fisicas-modelo-030

Jurisdiction
Spain · national
Version
1.0.0
Verification
draft

Authoritative source Modelo 030, 'Declaración censal de alta en el Censo de obligados tributarios, cambio de domicilio y/o de variación de datos personales', Agencia Tributaria (AEAT) (4-page fillable AcroForm PDF; pages 1-2 are the 'Ejemplar para la Administración' copy, pages 3-4 an identical duplicate 'Ejemplar para el interesado')

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

119 fields, read from the published schema.json, with names, types, requiredness, and validation as the document states them. The live government form remains the authoritative source.

Fields

  • nifInteresado string required

    NIF (Número de Identificación Fiscal) of the declarant ('interesado'). Printed as the form's own running header, present on every page; the only field this document treats as unconditionally required, since every submission — regardless of which box in Section 1 is marked — must identify who is filing.

    patternclassification: sensitive-pii
  • apellidosInteresado string required

    Surname(s) of the declarant, as printed in the form's own running header (combined first+second surname, distinct from Section 2's own split 'Primer apellido'/'Segundo apellido' boxes).

    classification: pii
  • nombreInteresado string required

    Given name of the declarant, as printed in the form's own running header.

    classification: pii
  • causaAltaCensoInteresado boolean optional

    Checkbox: Alta en el censo de obligados tributarios (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaAltaCensoConyuge boolean optional

    Checkbox: Alta en el censo de obligados tributarios (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaCambioDomicilioFiscalInteresado boolean optional

    Checkbox: Modificaciones/cambio de domicilio fiscal (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaCambioDomicilioFiscalConyuge boolean optional

    Checkbox: Modificaciones/cambio de domicilio fiscal (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaDomicilioNotificacionesInteresado boolean optional

    Checkbox: Consignación/modificación/baja de domicilio de notificaciones (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaDomicilioNotificacionesConyuge boolean optional

    Checkbox: Consignación/modificación/baja de domicilio de notificaciones (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaModificacionDatosIdentificativosInteresado boolean optional

    Checkbox: Modificación de datos identificativos (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaModificacionDatosIdentificativosConyuge boolean optional

    Checkbox: Modificación de datos identificativos (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaSolicitudNifSinDniNieInteresado boolean optional

    Checkbox: Solicitud de NIF por persona física que no disponga de DNI/NIE (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaSolicitudNifSinDniNieConyuge boolean optional

    Checkbox: Solicitud de NIF por persona física que no disponga de DNI/NIE (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaCambioEstadoCivilInteresado boolean optional

    Checkbox: Cambio/modificación de estado civil (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaCambioEstadoCivilConyuge boolean optional

    Checkbox: Cambio/modificación de estado civil (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaNuevaTarjetaNifInteresado boolean optional

    Checkbox: Solicitud de nueva tarjeta acreditativa del NIF (interesado). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaNuevaTarjetaNifConyuge boolean optional

    Checkbox: Solicitud de nueva tarjeta acreditativa del NIF (cónyuge). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • causaTelefonosCorreoAvisos boolean optional

    Checkbox: Alta/modificación/baja de datos de teléfonos y direcciones electrónicas para recibir avisos de la AEAT (interesado only — this cause has no separate cónyuge checkbox on the form). Section 1's own instructions state that both the 'Interesado' and 'Cónyuge' checkboxes for a shared cause are marked only when both spouses are jointly communicating the same change of fiscal/notification domicile, or simultaneously requesting registration/NIF/identifying-data changes, in which case the declaration must be signed by both spouses.

  • residenteFiscalEspanaInteresado boolean optional

    Checkbox: the interesado is a fiscal resident in Spain.

  • noResidenteFiscalEspanaInteresado boolean optional

    Checkbox: the interesado is NOT a fiscal resident in Spain.

  • fechaEfectosResidenciaFiscalInteresado date optional

    Effective date of the interesado's fiscal-residence status declared above. The source prints this as three adjacent day/month/year text boxes (all-numeric, maxLen 2/2/4); merged into a single date field per this registry's convention for split date sub-widgets (matching this registry's precedent, e.g. cl/sii/aviso-venta-vehiculo's fechaVenta).

  • nifOtrosPaisesInteresado string optional

    Tax identification number issued by another country, or CIF of the interesado's state of residence, when relevant to the residency status declared above.

  • numeroPasaporteInteresado string optional

    Passport number of the interesado.

    classification: sensitive-pii
  • nacionalidadInteresado string optional

    Nationality of the interesado.

    classification: pii
  • sexoInteresado enum optional

    Sex of the interesado. The source widget is a plain single-character text box (maxLen 1) with no combo/radio structure exposing its accepted values; 'H'/'M' (Hombre/Mujer) is this registry's inference from standard AEAT census-form convention on comparable forms, NOT confirmed from this PDF's own annotation data — flagged for a human reviewer to double-check against a live-filled specimen if one becomes available.

    enum: H | Mclassification: pii
  • nifSeccion2Interesado string optional

    NIF of the interesado, as entered in Section 2's own identification block (distinct AcroForm field from the running-header NIF above, though expected to carry the same value).

    patternclassification: sensitive-pii
  • primerApellidoInteresado string optional

    First (paternal) surname of the interesado.

    classification: pii
  • segundoApellidoInteresado string optional

    Second (maternal) surname of the interesado, when applicable.

    classification: pii
  • nombreSeccion2Interesado string optional

    Given name of the interesado, as entered in Section 2's own identification block.

    classification: pii
  • fechaNacimientoInteresado date optional

    Date of birth of the interesado. Merged from three adjacent day/month/year text boxes (all-numeric, maxLen 2/2/4) per this registry's date-merge convention.

    classification: sensitive-pii
  • municipioNacimientoInteresado string optional

    Municipality of birth of the interesado.

  • provinciaNacimientoInteresado string optional

    Province of birth of the interesado.

  • paisNacimientoInteresado string optional

    Country of birth of the interesado.

  • residenteFiscalEspanaConyuge boolean optional

    Checkbox: the cónyuge is a fiscal resident in Spain.

  • noResidenteFiscalEspanaConyuge boolean optional

    Checkbox: the cónyuge is NOT a fiscal resident in Spain.

  • fechaEfectosResidenciaFiscalConyuge date optional

    Effective date of the cónyuge's fiscal-residence status declared above. Merged from three adjacent day/month/year text boxes per this registry's date-merge convention.

  • nifOtrosPaisesConyuge string optional

    Tax identification number issued by another country, or CIF of the cónyuge's state of residence.

  • numeroPasaporteConyuge string optional

    Passport number of the cónyuge.

    classification: sensitive-pii
  • nacionalidadConyuge string optional

    Nationality of the cónyuge.

    classification: pii
  • sexoConyuge enum optional

    Sex of the cónyuge. Same unconfirmed-enum caveat as sexoInteresado: the source widget is a plain single-character text box with no exposed value list.

    enum: H | Mclassification: pii
  • nifSeccion3Conyuge string optional

    NIF of the cónyuge, as entered in Section 3's own identification block.

    patternclassification: sensitive-pii
  • primerApellidoConyuge string optional

    First (paternal) surname of the cónyuge.

    classification: pii
  • segundoApellidoConyuge string optional

    Second (maternal) surname of the cónyuge, when applicable.

    classification: pii
  • nombreSeccion3Conyuge string optional

    Given name of the cónyuge.

    classification: pii
  • fechaNacimientoConyuge date optional

    Date of birth of the cónyuge. Merged from three adjacent day/month/year text boxes per this registry's date-merge convention.

    classification: sensitive-pii
  • municipioNacimientoConyuge string optional

    Municipality of birth of the cónyuge.

  • provinciaNacimientoConyuge string optional

    Province of birth of the cónyuge.

  • paisNacimientoConyuge string optional

    Country of birth of the cónyuge.

  • prefijoPaisTelefono string optional

    Country calling code prefix for the mobile number below.

    length: 0–5
  • telefonoMovilAvisos string optional

    Mobile phone number the AEAT may use to send informational notices. The form's own §4 notice states that supplying a phone number or email here authorizes AEAT to use it for informational notices.

    classification: pii
  • bajaTelefonoAvisos boolean optional

    Checkbox: withdraw ('baja') a previously registered notice mobile number, rather than adding/changing one. Left required:false/independent of telefonoMovilAvisos: a withdrawal submission would set this true while leaving the number field blank.

  • correoElectronicoAvisos string optional

    Email address the AEAT may use to send informational notices.

    classification: pii
  • bajaCorreoElectronicoAvisos boolean optional

    Checkbox: withdraw ('baja') a previously registered notice email address, rather than adding/changing one.

  • tipoViaDomicilioFiscal string optional

    Street-type abbreviation (e.g. Calle, Avenida, Plaza) of the interesado's Spanish fiscal domicile.

  • nombreViaDomicilioFiscal string optional

    Street name of the fiscal domicile.

    classification: pii
  • tipoNumeracionDomicilioFiscal string optional

    House-numbering type qualifier of the fiscal domicile (e.g. Número, Kilómetro).

  • numeroCasaDomicilioFiscal string optional

    House/building number of the fiscal domicile.

  • calificadorNumeroDomicilioFiscal string optional

    Qualifier appended to the house number (e.g. bis, duplicado), when applicable.

  • bloqueDomicilioFiscal string optional

    Block identifier of the fiscal domicile, when applicable.

  • portalDomicilioFiscal string optional

    Portal/entrance identifier of the fiscal domicile, when applicable.

  • escaleraDomicilioFiscal string optional

    Staircase identifier of the fiscal domicile, when applicable.

  • plantaDomicilioFiscal string optional

    Floor of the fiscal domicile, when applicable.

  • puertaDomicilioFiscal string optional

    Door identifier of the fiscal domicile, when applicable.

  • complementoDomicilioFiscal string optional

    Free-text complement to the fiscal domicile (e.g. Urbanización, Polígono Industrial, Centro Comercial), per the source's own examples.

  • localidadDomicilioFiscal string optional

    Locality/population center of the fiscal domicile, only when distinct from the municipality below.

  • codigoPostalDomicilioFiscal string optional

    Postal code of the fiscal domicile. The source widget itself carries a generic maxLen of 10 with no format constraint; this document tightens it to Spain's standard 5-digit postal-code format as a disclosed judgment call, since §5 is explicitly scoped to a 'Domicilio fiscal en España'.

    pattern
  • municipioDomicilioFiscal string optional

    Municipality of the fiscal domicile.

  • provinciaDomicilioFiscal string optional

    Province of the fiscal domicile.

  • indicadorReferenciaCatastral string optional

    Short indicator/prefix code for the cadastral reference below, per Spain's cadastral-reference numbering convention.

  • referenciaCatastral string optional

    Cadastral reference number of the fiscal domicile, when known.

  • domicilioFiscalExtranjero boolean optional

    Checkbox: the foreign address entered below is the interesado's fiscal domicile abroad.

  • otrosDomiciliosExtranjero boolean optional

    Checkbox: the foreign address entered below is some other (non-fiscal) foreign address.

  • direccionExtranjero string optional

    Full street address of the foreign domicile (the source's own bilingual label 'Domicilio (Address)' is printed verbatim).

    classification: pii
  • complementoDomicilioExtranjero string optional

    Free-text complement to the foreign address, when needed.

  • poblacionCiudadExtranjero string optional

    City/town of the foreign address.

  • codigoPostalExtranjero string optional

    Postal/ZIP code of the foreign address, in that country's own format (left unconstrained, unlike the Spain-only domestic postal-code fields elsewhere in this document).

  • provinciaRegionEstadoExtranjero string optional

    Province/region/state of the foreign address.

  • paisExtranjero string optional

    Country name of the foreign address.

  • codigoPaisExtranjero string optional

    Country code of the foreign address, per AEAT's own external country-code table (not reproduced in this form).

  • bajaDomicilioNotificaciones boolean optional

    Checkbox: withdraw ('baja') a previously registered notification domicile, rather than adding/changing one.

  • tipoViaNotificaciones string optional

    Street-type abbreviation of the notification domicile — track 1) of two alternative tracks the source's own instructions offer ('cumplimente el apartado 1 ó el 2 según estime oportuno'); track 2) is the apartado-de-correos fields below. Left required:false/ungated: the source names no field that flags which of the two tracks applies, only the general causaDomicilioNotificacionesInteresado/Conyuge checkboxes in Section 1, which do not distinguish between them either.

  • nombreViaNotificaciones string optional

    Street name of the notification domicile (track 1).

    classification: pii
  • tipoNumeracionNotificaciones string optional

    House-numbering type qualifier of the notification domicile (track 1).

  • numeroCasaNotificaciones string optional

    House/building number of the notification domicile (track 1).

  • calificadorNumeroNotificaciones string optional

    Qualifier appended to the house number of the notification domicile, when applicable (track 1).

  • bloqueNotificaciones string optional

    Block identifier of the notification domicile, when applicable (track 1).

  • portalNotificaciones string optional

    Portal/entrance identifier of the notification domicile, when applicable (track 1).

  • escaleraNotificaciones string optional

    Staircase identifier of the notification domicile, when applicable (track 1).

  • plantaNotificaciones string optional

    Floor of the notification domicile, when applicable (track 1).

  • puertaNotificaciones string optional

    Door identifier of the notification domicile, when applicable (track 1).

  • complementoDomicilioNotificaciones string optional

    Free-text complement to the notification domicile (track 1), same examples as the fiscal-domicile complement above.

  • localidadNotificaciones string optional

    Locality/population center of the notification domicile, only when distinct from the municipality below (track 1).

  • codigoPostalNotificaciones string optional

    Postal code of the notification domicile (track 1). Not pattern-constrained to 5 digits, unlike the fiscal-domicile postal code: unlike Section 5, Section 7 does not print an 'en España'-only scope note, so a stricter domestic-only pattern was not asserted here.

  • municipioNotificaciones string optional

    Municipality of the notification domicile (track 1).

  • provinciaNotificaciones string optional

    Province of the notification domicile (track 1).

  • destinatarioNotificaciones string optional

    Name of the notification recipient, only when different from the declarant (track 1).

    classification: pii
  • calidadDestinatarioNotificaciones string optional

    Capacity in which the named recipient acts (e.g. representante, apoderado, familiar), per the source's own examples (track 1).

  • apartadoCorreosNumero string optional

    P.O. box number of the notification domicile — track 2) of the two alternative tracks (see tipoViaNotificaciones above).

  • poblacionCiudadApartadoCorreos string optional

    City/town of the P.O. box (track 2).

  • codigoPostalApartadoCorreos string optional

    Postal code of the P.O. box (track 2). Tightened to Spain's 5-digit format as a disclosed judgment call, consistent with codigoPostalDomicilioFiscal, since a P.O. box is necessarily a domestic Spanish postal facility.

    pattern
  • provinciaApartadoCorreos string optional

    Province of the P.O. box (track 2).

  • destinatarioApartadoCorreos string optional

    Name of the notification recipient at the P.O. box, only when different from the declarant (track 2).

    classification: pii
  • calidadDestinatarioApartadoCorreos string optional

    Capacity in which the named P.O.-box recipient acts (track 2).

  • nifRepresentante string optional

    NIF of the legal or voluntary representative acting on the interesado's behalf, when the declaration is filed through a representative.

    patternclassification: sensitive-pii
  • nombreRazonSocialRepresentante string optional

    Full name (or company name, if the representative is a legal entity) of the representative.

    classification: pii
  • representanteResidenteSi boolean optional

    Checkbox: the representative is a fiscal resident.

  • representanteResidenteNo boolean optional

    Checkbox: the representative is not a fiscal resident.

  • representacionLegal boolean optional

    Checkbox: the representative acts under legal representation (e.g. parental authority, guardianship).

  • representacionLegalClave string optional

    Code identifying the specific legal-representation basis, per AEAT's own external code table (not reproduced in this 2-page form).

  • representacionVoluntaria boolean optional

    Checkbox: the representative acts under voluntary representation (e.g. power of attorney).

  • tipoRepresentacionClave string optional

    Code identifying the type of representation, per AEAT's own external code table (not reproduced in this form).

  • tituloRepresentacionClave string optional

    Code identifying the document/title evidencing the representation, per AEAT's own external code table (not reproduced in this form).

  • estadoCivilSoltero boolean optional

    Checkbox: current civil status is single.

    classification: pii
  • estadoCivilCasado boolean optional

    Checkbox: current civil status is married.

    classification: pii
  • estadoCivilViudo boolean optional

    Checkbox: current civil status is widowed.

    classification: pii
  • estadoCivilDivorciadoSeparado boolean optional

    Checkbox: current civil status is divorced or legally separated.

    classification: pii
  • fechaAdquisicionEstadoCivilActual date optional

    Date the current civil status (checked above) was acquired. The source itself parenthetically scopes this box to '(si se comunica cambio de estado civil)' — only when a civil-status change is being communicated — matched here to the causaCambioEstadoCivilInteresado checkbox in Section 1.

  • lugarFirma string optional

    Place of signature ('En ___ a ___ de ___ de ___').

  • fechaFirma date optional

    Date of signature. Merged from three adjacent 'a ___ de ___ de ___' (day/month/year) text boxes per this registry's date-merge convention. Judgment call: the day (dato.128) and year (dato.130) sub-boxes carry native maxLen 2/4 (purely numeric), but the month sub-box (dato.129) carries no maxLen at all — unlike every other merged date triple in this document — suggesting the source may expect the month spelled out as a word (e.g. 'julio') rather than a 2-digit number on this specific line; normalized to a single ISO date here regardless, consistent with how this document treats every other split date widget.

Verification record

This file is the source-review record for this document version, per the manual-source-review-v1 practice. It documents the provenance of the published fields and flow and states the current verification claim honestly.

Current claim

  • status: draft
  • verification.method: manual-source-review-v1
  • verification.lastVerifiedAt: 2026-07-07

This is a GovSchema Standard Research cycle (GOV-1645), opening Spain as this registry's 21st jurisdiction.

Why this candidate

The brief was to find a real, currently-live, unauthenticated, field-level government source filling a genuine gap — either in an existing jurisdiction's remaining open vertical, or a strong new 21st-jurisdiction opener. This cycle screened the following candidates, in the order investigated:

  1. Chile — Passport (Registro Civil / consular channels). A direct fetch of registrocivil.cl still returns a bot-protection CAPTCHA interstitial. The site's own appointment-booking flow (www.registrocivil.cl → "Reserva de hora") is ClaveÚnica-gated with no downloadable form. A search for a standalone passport/cédula application PDF turned up only instructional guides, not fillable forms: ChileAtiende's own ficha PDF for pasaporte (chileatiende.gob.cl/fichas/3445/1/pdf) returned HTTP 403 (CloudFront block, matching prior cycles' own finding for this domain), and a consulate-published "Instructivo Solicitud Cédula Nacional de Identidad y/o Pasaporte Chileno" (chile.gob.cl/los-angeles/.../instructivo_obtencion_cedula_y_pasaporte...pdf, fetched directly, HTTP 200, 624KB) is confirmed prose-only — a pdfjs-dist AcroForm scan found zero /AcroForm//Widget objects in the file. Genuinely appointment-only, no field-level source found.
  2. Chile — National ID (cédula de identidad). Same ClaveÚnica-gated scheduling flow as above. A distinct lead — Policía de Investigaciones de Chile's (PDI, a different agency from Registro Civil) own "Habilitación para Renovar Cédula de Identidad" PDF (pdichile.cl/docs/.../formulario-habilitación-para-renovar-cedula-de-identidad...pdf) — was found via web search, but the fetched bytes were an HTTP 403 CloudFront block page (1.4KB), not the PDF; the corresponding PDI service page also 403s. Even if reachable, this form's own title scopes it narrowly to a third-party authorization for someone else to collect a renewed card, not the identity-issuance process itself. No usable field-level source found.
  3. Chile — Visa (consular e-visa/SAC channel). Re-checked per this cycle's own brief, since DNS/hosting can change between cycles: evisa.minrel.gob.cl still does not resolve (curl: (6) Could not resolve host, confirmed 2026-07-07, same finding as the prior GOV-1638 cycle). Still not independently confirmed reachable.
  4. Peru — Passport (Migraciones). A genuine, directly downloadable, unauthenticated PDF exists — migraciones.gob.pe/formularios/formatos/SOLICITUD-GENERAL.pdf (HTTP 200, 43KB) — but it is Peru's generic multi-purpose "Solicitud General" request form used across many different Migraciones procedures, not a passport-specific field set, and a full-document pdfjs-dist scan found zero /AcroForm//Widget objects: it is a plain, non-fillable template. A second candidate PDF referenced in search results (sut.pcm.gob.pe/sutarchivos/file_35_20240226_091532.pdf, described as a passport-specific form) could not be fetched at all — curl timed out after 40 seconds on every attempt. No usable field-level source found.
  5. Peru — National ID (RENIEC DNI renewal/duplicate). apps.reniec.gob.pe/renovacionDni/ is live and unauthenticated at its landing page (HTTP 200), but it is an Angular single-page app that loads Google's recaptcha/enterprise.js on its very first screen — a CAPTCHA-gated flow, not a static field-level source, matching the same class of dead end this registry has confirmed for other reCAPTCHA Enterprise-gated national-ID portals (e.g. ZA eHomeAffairs, GOV-1225).
  6. Argentina — RENAPER (DNI/Passport). Both processes are confirmed, across every official page found (argentina.gob.ar/interior/renaper, tramites.renaper.gob.ar), to run through in-person Documentation Center appointments booked via the "Mi Argentina" app, with online presence limited to appointment scheduling and application-status lookup — no downloadable field-level form found for either process.
  7. Spain — AEAT Modelo 030 (this document). Flagged by this cycle's own brief as a previously-screened-but-not-picked candidate (GOV-1624's own VERIFICATION.md screened it and set it aside only because its ~135 AcroForm widgets carry generic internal names, dato.1dato.135, "making faithful single-pass extraction meaningfully more error-prone"). Re-investigated properly this cycle: confirmed genuinely live, unauthenticated, no CAPTCHA/WAF/login gate (sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G321/mod030_es_es.pdf, HTTP 200, Last-Modified: Mon, 16 Sep 2024, 830,991 bytes, SHA-256 c6a4b24d9ef3b8d2843fd5f726ec7dd0117546e695aacf92cc5b3ed67841261f). Despite the generic widget names, the form's own printed reference numbers (e.g. "207 NIF", "411 Tipo de vía") sit directly above/beside each widget and gave a clean, independently-checkable coordinate-matching path (see Extraction method below) — genuinely tractable, and opens a new jurisdiction. Picked as this cycle's candidate.

Sources examined

Source 1 (primary source, the form itself)
  • Authority: Agencia Estatal de Administración Tributaria (AEAT)
  • Document: Modelo 030, "Declaración censal de alta en el Censo de obligados tributarios, cambio de domicilio y/o de variación de datos personales"
  • URL (directly retrieved, HTTP 200, no login): https://sede.agenciatributaria.gob.es/static_files/Sede/Procedimiento_ayuda/G321/mod030_es_es.pdf — a genuine 4-page fillable AcroForm PDF. Pages 1-2 are labelled "Ejemplar para la Administración"; pages 3-4 are a byte-for-byte structural duplicate labelled "Ejemplar para el interesado" (same field names, same layout, confirmed by diffing the extracted widget lists of pages 1 vs 3 and 2 vs 4) — not modelled as separate content, since they are the same logical fields repeated for the filer's own retained copy.
  • A second URL found under the same download page, mod030_en_gb.pdf, turned out to be byte-identical (cmp confirmed, matching SHA-256) to the Spanish file, despite its "en_gb" filename — there is in fact no distinct English-language edition of this form; the filename is misleading. This document is authored entirely in Spanish, matching the form's actual (only) language.
  • Extraction method: pdfjs-dist@3.11.174, legacy/build/pdf.js (CJS build), plus the canvas package for a rendered visual cross-check. getAnnotations() was used for the AcroForm widget layer (field name, type, rect, maxLen, checkbox flag — 134 distinct dato.*/dato.nif.* fields across pages 1-2, confirmed identical on the duplicate pages 3-4); getTextContent() was used for each page's own text layer, with each item's transform[4]/transform[5] (x/y) coordinates extracted directly and combined with the widget rects into one y-descending, x-ascending ordered list per page. Because this form prints an explicit reference number directly above or beside almost every field (e.g. "207 NIF", "412 Nombre de la vía pública"), each widget was attributed to its printed box number and label by nearest-position matching in this combined list, then independently re-confirmed visually: both pages were rendered at 3x zoom via pdfjs-dist's own page.render() into a canvas bitmap, and the specific rows most likely to be ambiguous (the interesado/cónyuge causa-checkbox grid in §1, the residente/NIF/pasaporte/ nacionalidad/sexo row in §2/§3, and the representante/estado-civil blocks in §8/§9) were cropped and visually inspected against the coordinate-based attribution before being accepted. No attribution in schema.json relies on the coordinate match alone without this visual cross-check having been performed for its row.
  • Retrieved / reviewed: 2026-07-07.
  • What it confirms: every field's exact printed reference number, section, and label; each field's native AcroForm type (text/checkbox) and maxLen where the source asserts one; the five off-page (negative-y rect) hidden widgets excluded from this document (see Judgment call 1 below); and the two duplicate pages' byte-for-byte structural identity to pages 1-2.
Source 2 (corroborating, "still current" check)
  • AEAT's own service pages for this form (sede.agenciatributaria.gob.es/Sede/procedimientoini/G321.shtml, .../censos-nif-domicilio-fiscal/censos/modelo-030-.../descarga-modelo.html) confirm Modelo 030 remains the currently-published form for this process and link to the same PDF, and describe its scope consistently with the form's own printed title (registration in the census, domicile change, personal-data variation) and its two submission channels (paper, and an "Extraordinary procedure for non-in-person presentation of Model 030" electronic channel this document does not model — see Scope below). Neither AEAT help page, nor any other AEAT documentation page found this cycle, publishes an explicit table mapping each Section 1 "causa" checkbox to which of the form's other sections must be completed for it — this document's own requiredWhen gating (Judgment call 3 below) is this registry's own inference from the near-verbatim textual match between several causa labels and their corresponding section headers, not a citation to an AEAT-published cross-reference.

Field inventory (Phase 3)

All 119 fields[] entries and their exact source widget/box-number/label are listed inline in schema.json's own sourceRef per field. Summary by section:

| Section | Fields | Notes | |---|---|---| | Header ("Datos identificativos") | nifInteresado, apellidosInteresado, nombreInteresado | The only 3 fields modelled required: true unconditionally — every submission needs to identify the filer, and the source prints these on every page with no visible gating checkbox | | 1. Causas de presentación | 15 boolean fields (causa*Interesado/causa*Conyuge, boxes 101-117) | All optional; the source's own instructions state interesado+cónyuge pairs are both marked only for a joint filing | | 2. Datos identificativos del interesado | 15 fields (boxes 201-217) | Core identity (nifSeccion2Interesado/primerApellidoInteresado/nombreSeccion2Interesado) requiredWhen any of the alta/modificación/solicitud-NIF interesado causa boxes; rest optional | | 3. Datos identificativos del cónyuge | 15 fields (boxes 301-317), mirrors §2 | Core identity requiredWhen the mirrored cónyuge causa boxes | | 4. Teléfonos y correo | 5 fields (boxes 426/427/429/431/432) | All optional (a "baja"/withdrawal submission would need the value fields blank) | | 5. Domicilio fiscal en España | 17 fields (boxes 411-430) | Core address (tipo/nombre de vía, C. Postal, municipio, provincia) requiredWhen causaCambioDomicilioFiscalInteresado | | 6. Domicilio en el extranjero | 9 fields (boxes 501-510) | All optional; 501/502 form an exclusivityGroup | | 7. Domicilio de notificaciones | 24 fields (boxes 600-630) | All optional — two alternative tracks (street address vs. apartado de correos) per the source's own "apartado 1 ó el 2" instruction, with no field distinguishing which applies | | 8. Representante | 9 fields (boxes 701-708) | All optional; 703 SÍ/NO and 704/706 Legal/Voluntaria each form an exclusivityGroup | | 9. Estado civil | 5 fields (boxes 801-805) | The 4 status checkboxes form an exclusivityGroup; fechaAdquisicionEstadoCivilActual requiredWhen causaCambioEstadoCivilInteresado | | 10. Fecha y firma | 2 fields (lugarFirma, fechaFirma) | Physical signature itself not modelled, per this registry's standing convention |

Total: 119 fields, plus 6 exclusivityGroups entries (residenciaFiscalInteresado, residenciaFiscalConyuge, estadoCivilActual, domicilioExtranjeroTipo, representanteResidencia, causaRepresentacion).

Access notes and judgment calls

  1. Five widgets are deliberately excluded from fields[]: dato.77, dato.80, dato.81, dato.86, dato.87. Every other widget in this PDF has a rect inside the visible page area (y roughly 0-840); these five carry rect y-coordinates of -104 to -180 — entirely off the printed page. They sit adjacent (by field-name numbering) to the catastral-reference and foreign-postal-code boxes, and are most likely internal duplicate/JavaScript-support widgets (this PDF's acc.*/ contador.*/bot.* fields confirm the document does carry non-visible helper logic for barcode generation and page navigation) rather than printed, applicant-facing boxes. Excluded on the same basis this registry excludes non-applicant control fields elsewhere (e.g. F1816's FOLIO box).
  2. No native per-field required flag exists anywhere in this PDF — every widget's own required annotation property reads false, matching the pattern already established for both cl/sii schemas in this registry. required: true is asserted only for the three header fields (see table above); every other field's requiredness is either requiredWhen-gated against a Section 1 causa checkbox (see call 3) or left required: false.
  3. The requiredWhen ties from Section 1's causa checkboxes to Sections 2/3/5/9 are this registry's own inference, not an AEAT-published cross-reference. No source found this cycle states explicitly "if you mark causa 107, you must complete Section 2" — this document infers that correspondence from the near-verbatim textual match between a causa's own label and its corresponding section's own header (e.g. causa 107 "Modificación de datos identificativos" ↔ §2's header "Datos identificativos del interesado"; causa 103 "Modificaciones/cambio de domicilio fiscal" ↔ §5's header "Consignación de domicilio fiscal"; causa 111 "Cambio/modificación de estado civil" ↔ §9's header "Estado civil"). Flagged prominently here and in the affected fields' own descriptions for a human reviewer to double-check against AEAT's own "Instrucciones" documentation (linked from the form's help page but not itself examined this cycle, since no direct download link to it was found distinct from the form PDF itself).
  4. Section 7's two address tracks ("apartado 1" street address vs. "apartado 2" P.O. box) are left entirely optional with no requiredWhen gate at all, even though causa 105/106 plausibly corresponds to this section — because, unlike Sections 2/5/9, the source provides no field at all distinguishing which of the two tracks a given filer uses, and fabricating a requiredWhen against one track when the true intent might be the other would misrepresent the form. Same non-fabrication discipline this registry applied to cl/sii/aviso-venta-vehiculo's undistinguished Secciones D/E.
  5. sexoInteresado/sexoConyuge are modelled as an H/M enum, but this is an unconfirmed inference, not read from the PDF itself: both widgets are plain single-character text boxes (maxLen: 1) with no combo/radio/export-value structure exposing their accepted values. H/M (Hombre/Mujer) is standard convention on comparable AEAT census forms, but a human reviewer should double-check this against a live-filled specimen or AEAT's own field-help text if one becomes available — flagged both here and in each field's own description.
  6. Postal-code fields are pattern-tightened to Spain's 5-digit format (codigoPostalDomicilioFiscal, codigoPostalApartadoCorreos) even though their native AcroForm maxLen is a generic 10 — a disclosed judgment call, justified because both sit inside sections explicitly scoped to a domestic Spanish address ("Domicilio fiscal en España"; a P.O. box is necessarily a domestic postal facility). codigoPostalNotificaciones (§7, track 1) and codigoPostalExtranjero (§6) are left unconstrained, since neither section carries the same domestic-only scope note.
  7. Three date fields are each merged from three adjacent day/month/year AcroForm text-box triplets into one date-typed field (fechaEfectosResidenciaFiscalInteresado/Conyuge, fechaNacimientoInteresado/Conyuge, fechaFirma), consistent with this registry's established convention (e.g. cl/sii/aviso-venta-vehiculo's fechaVenta). One asymmetry is flagged: the signature date's month sub-widget (dato.129) carries no maxLen at all, unlike its day/year siblings (maxLen 2/4, both purely numeric) and unlike every other merged date triple in this document (all three sub-widgets numeric) — suggesting this specific line may expect the month spelled out as a word ("de julio de") rather than a 2-digit number. Normalized to ISO date regardless, per this document's own consistent date-merge convention; flagged for a human reviewer.
  8. The "Clave" code fields in §8 (representacionLegalClave, tipoRepresentacionClave, tituloRepresentacionClave) and the foreign country-code field in §6 (codigoPaisExtranjero) reference AEAT's own external code tables, none of which are reproduced inside this 2-page form — modelled as open strings, the same discipline this registry applies elsewhere to un-reproduced external code tables (e.g. Chile's SII economic-activity-code catalog in the sibling cl/sii schema).
  9. The electronic-filing channel is out of scope for this v1.0.0. AEAT's own help pages describe an "Extraordinary procedure for non-in-person presentation of Model 030" — an authenticated Sede Electrónica flow — as an alternative to the paper form this document models; that flow was not examined and is not modelled here.
  10. No accompanying-document requirement is modelled (no documents[] array). No source examined this cycle publishes an explicit list of documents to attach beyond presenting the paper form in person (implicitly alongside one's own DNI/NIE, per general AEAT office-visit practice) — left undisclosed as a fabricated documents[] entry rather than asserted without a citable source.

Test run (Phase 4)

No live submission was attempted: this is a census filing against AEAT's own production tax registry, and submitting fabricated identity/domicile data into a real government census system is not a safe or reversible action.

Instead, two fully hand-constructed mock records were built from this document's own field inventory and independently checked with a standalone, ajv-free rule-tracing script (not committed — reads schema.json's own required/requiredWhen/validation.pattern/validation.enum/ exclusivityGroups and evaluates them against each mock record) in addition to the repo's own validators:

Scenario 1 — single (unmarried) Spain-resident individual, the committed application-packet.json. Simultaneously registers in the census (causa 101), reports her current domestic fiscal domicile (causa 103), and registers a mobile/email for AEAT notices (causa 117). Correctly triggers the requiredWhen gates on Section 2's core identity fields and Section 5's core address fields; Section 3 (cónyuge), Section 6 (foreign domicile), Section 7 (notifications), Section 8 (representative), and Section 9 (estado civil) are all correctly left absent. residenciaFiscalInteresado's exclusivityGroup is satisfied (exactly one of the pair true). Passes with zero errors.

Scenario 2 — married couple jointly reporting a civil-status change and a foreign fiscal domicile, filed through a voluntary representative (traced only, not committed as a second fixture file). Exercises fechaAdquisicionEstadoCivilActual's requiredWhen tie to causaCambioEstadoCivilInteresado, and all three of the estadoCivilActual, domicilioExtranjeroTipo, representanteResidencia, and causaRepresentacion exclusivityGroups simultaneously. Passes with zero errors.

Negative controls (each expected to fail exactly one rule, verified against the standalone script above): (a) removing nifSeccion2Interesado from Scenario 1 while causaAltaCensoInteresado stays true — correctly flagged as a missing required field; (b) setting both residenteFiscalEspanaInteresado and noResidenteFiscalEspanaInteresado true in Scenario 1 — correctly flagged as an exclusivityGroup violation; (c) nifInteresado: "1234567Z" (7 digits instead of 8) — correctly flagged as a validation.pattern violation; (d) codigoPostalDomicilioFiscal: "4700" (4 digits) — correctly flagged as a validation.pattern violation. All four negative controls were correctly rejected.

Both meta-schema validators were run against the finished document and pass clean:

``` $ node tools/validate.mjs registry/es/aeat/declaracion-censal-personas-fisicas-modelo-030/1.0.0/schema.json ok registry/es/aeat/declaracion-censal-personas-fisicas-modelo-030/1.0.0/schema.json

1/1 document(s) passed.

$ node tools/validate-ajv.mjs registry/es/aeat/declaracion-censal-personas-fisicas-modelo-030/1.0.0/schema.json ok registry/es/aeat/declaracion-censal-personas-fisicas-modelo-030/1.0.0/schema.json [v0.3]

1/1 document(s) validated against the meta-schema (ajv 2020-12). ```

View the raw record (VERIFICATION.md)

Version history

  • 1.0.0 draft latest this page has verification record schema.json

Independent and non-affiliated

GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Agencia Estatal de Administración Tributaria or any government. The authoritative source is always the live government form and its official instructions.