Registry entry

Eswatini — Application for Initial Registration of a Motor Vehicle (Form MVR1-MIB)

The Road Traffic Department's (RTD) Form MVR1-MIB, "Application for Initial Registration of a Motor Vehicle" (Road Traffic Act, 2007; Road Traffic Regulations, 2016), under Eswatini's Ministry of Public Works and Transport — opens Eswatini's DMV vertical (3 of 6: National ID & Civic Documents, Taxes). The "-MIB" suffix marks this as the Manufacturer/Importer/Builder variant of Form MVR1: it is filed by (or on behalf of) the manufacturer, importer, or builder first placing a motor vehicle on Eswatini's National Traffic Information System (NaTIS) register, not a subsequent transfer or re-registration between private owners. This v1.0.0 schema is scoped to the single-title-holder core declaration: Part A (Particulars of Title Holder — the manufacturer/importer/builder organisation and its proxy/representative), the Declaration by Owner, Part C (vehicle particulars — role, NaTIS model number, chassis/VIN, make, series name, transmission, colour, gearbox/differential numbers, odometer, and the optional dimension/capacity fields the form's own heading marks "complete only if different from NaTIS model"), and the Declaration by Title Holder. The source document itself repeats an identical, structurally distinct "Part B" title-holder block (for a second/joint title holder) and prints a note that multiple vehicles may be applied for using additional copies of Part C — both are out of scope for this version and deferred to a future minor version, consistent with this registry's established main-form-now/companion-blocks-later precedent. The source document also bundles Form ACR ("Application for Certification of Roadworthiness"), a genuinely separate application/process for testing an already-identified vehicle's roadworthiness rather than registering it; ACR is not modelled by this document and is banked as a separate future-schema candidate. The "FOR OFFICE USE ONLY" panel (fees/receipt number, date liable for registration, nature of ownership, authorizing/data-capturing official sign-off, registration-certificate serial number) is completed by RTD staff, not the applicant, and is excluded entirely. GovSchema is an independent, non-profit standards body and is not affiliated with, endorsed by, or operated by the Kingdom of Eswatini, its Ministry of Public Works and Transport, or the Road Traffic Department.

Registry entry

sz/rtd/motor-vehicle-initial-registration-application

Jurisdiction
Eswatini · national
Version
1.0.0
Verification
draft

Authoritative source Form MVR1-MIB, "Application for Initial Registration of a Motor Vehicle", bundled with Form ACR ("Application for Certification of Roadworthiness") in a single .docx published on gov.sz's "Works Forms" page (Ministry of Public Works and Transport section)

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

34 fields across 6 steps, 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.

Part A - Particulars of Title Holder

  • titleHolderIdentificationType enum required

    The title holder is the manufacturer, importer, or builder organisation applying to register the vehicle, identified either by its own traffic registration number or its business (company) registration number.

    enum: traffic_registration_number | business_number
  • titleHolderIdentificationNumber string required

    Title holder's identification number

    length: 1–30classification: sensitive-pii
  • titleHolderOrganisationName string required

    Name of the title holder's organisation

    length: 1–200

Part A - Organisation Proxy/Representative

  • representativeIdentificationType enum required

    The individual acting for the title holder's organisation. The source form's own middle checkbox option prints "ID" twice, a rendering artefact of two adjacent single-character columns; this is modelled as a single "Swazi ID" option, matching the cleaner, unambiguous three-option identification-type layout printed for the same purpose on this same document's own bundled ACR form ("Traffic register no / Swazi ID / Foreign ID").

    enum: traffic_registration_number | swazi_id | foreign_id
  • representativeIdentificationNumber string required

    Proxy or representative's identification number

    length: 1–30classification: sensitive-pii
  • representativeCountryOfIssue string optional

    Country of issue, if the proxy or representative's identification is a foreign ID

    length: 0–100
  • representativeSurnameOrName string required

    Proxy or representative's surname/name

    length: 1–200classification: pii

Declaration by Owner

  • ownerDeclarantRole enum required

    Signing on behalf of the title holder as

    enum: organisations_proxy | organisations_representative
  • ownerDeclarationPlace string required

    Place of the Declaration by Owner

    length: 1–100
  • ownerDeclarationDate date required

    Date of the Declaration by Owner

Part C - Vehicle Particulars

  • registrationRole enum required

    Registering in role as

    enum: manufacturer | importer | builder
  • natisModelNumber string required

    NaTIS (National Traffic Information System) is the shared regional vehicle-registration reference system whose per-model catalogue entries this and neighbouring jurisdictions' registration forms cross-reference.

    length: 1–30
  • chassisNumberVin string required

    Chassis number / VIN

    length: 1–30
  • make string required

    Make

    length: 1–100
  • seriesName string required

    Series name

    length: 1–100
  • transmissionType enum required

    Transmission

    enum: none | manual | self_automatic | automatic
  • mainColour enum required

    Main colour

    enum: white | red | other
  • mainColourOther string optional

    Main colour, if "Other"

    length: 0–50
  • gearBoxNumber string optional

    Left optional: the source form does not disclose whether every registrable vehicle type carries a distinct stamped gearbox number (e.g. some motorcycles/trailers may not).

    length: 0–30
  • differentialNumber string optional

    Left optional for the same reason as gearBoxNumber.

    length: 0–30
  • noOdometer boolean optional

    Vehicle has no odometer

  • odometerReadingKm number optional

    Left optional rather than gated by noOdometer, since the source form's own "Or" between the "No odometer" box and the reading line indicates a single either/or choice the applicant makes directly, not a declared boolean this schema can safely condition on.

    range: 0–∞

Part C - Complete only if different from NaTIS model

  • passengerCapacitySeatedInclDriver number optional

    Passenger capacity, seated (including driver), if different from the NaTIS model

    range: 0–∞
  • passengerCapacityStanding number optional

    Passenger capacity, standing, if different from the NaTIS model

    range: 0–∞
  • netPower string optional

    The source prints no explicit unit for this value; modelled as free text rather than assuming kW.

    length: 0–30
  • overallLengthMm number optional

    Overall length (mm), if different from the NaTIS model

    range: 0–∞
  • overallWidthMm number optional

    Overall width (mm), if different from the NaTIS model

    range: 0–∞
  • overallHeightMm number optional

    Overall height (mm), if different from the NaTIS model

    range: 0–∞
  • wheelbaseMm number optional

    Wheelbase (mm), if different from the NaTIS model

    range: 0–∞
  • trackMm number optional

    Track (mm), if different from the NaTIS model

    range: 0–∞
  • rearOverhangMm number optional

    Rear overhang (mm), if different from the NaTIS model

    range: 0–∞

Declaration by Title Holder

  • titleHolderDeclarantRole enum required

    Signing the Declaration by Title Holder as

    enum: organisations_proxy | organisations_representative
  • titleHolderDeclarationPlace string required

    Place of the Declaration by Title Holder

    length: 1–100
  • titleHolderDeclarationDate date required

    Date of the Declaration by Title Holder

Verification record

GOV-4797 ("GovSchema Standard Research"). This cycle re-scanned CATALOG.md fresh: Eswatini currently has 2 of 6 verticals open (National ID & Civic Documents via GOV-4783; Taxes via GOV-4790), with DMV and Passport flagged by GOV-4790's own closing note as "soft backlog, not confirmed dead ends" — screened only via WebSearch/curl-style lookups, never a real rendered browser. Per this registry's standing procedure of re-checking soft backlog with a real browser before pivoting to a new jurisdiction, a real Chromium/Playwright session re-screened both:

  • Eswatini Passport is now a confirmed dead end: the Ministry of Home Affairs' own "Application Forms" page (gov.sz/index.php/application-forms) lists only a Temporary Residence Permit form (Form 3), a medical certificate, a visa form, and a payment schedule — no passport application form of any kind — and the homepage's own "International Passport" and "Vehicle Application" deep-links both 404 even when followed live from the linking page itself.
  • Eswatini DMV upgrades to a genuine, well-sourced candidate: gov.sz's own "Works Forms" page (/index.php/policies-regulations, under the Ministry of Public Works and Transport section) publishes several real, unauthenticated, directly downloadable forms in /images/Works/forms/, including LL1 APPLICATION FOR LEARNERS LICENCE.xls, PD1 APPLICATION FOR PROFESSIONAL DRIVING PERMIT.xls, RTS ROAD WORTHINESS SHEET.xls, and this document's own source, RTD - MVR1 and ACR FORMS.docx.

Reaching the live source

Fetched directly: https://www.gov.sz/images/Works/forms/RTD%20-%20MVR1%20and%20ACR%20FORMS.docx, HTTP 200, Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document, Content-Length: 48931 (byte-identical to the downloaded file), Last-Modified: Thu, 25 Sep 2025 20:01:36 GMT, sha256 c2ce9f0496d346ad29eee067253bc698c0125cde82b3c0c775d8579cb1bce265, no login/CAPTCHA/WAF gate — confirmed with a plain curl HEAD request in addition to the real-browser session that first located the link, since the file itself is a static asset (only the surrounding CMS page is JS-rendered by the site's front end in some cases; this particular Joomla-based page rendered its own form links in the page's raw HTML fine on a plain fetch too).

Extraction method

The .docx is a genuine Office Open XML zip archive (confirmed via Python's zipfile module; contains word/document.xml, [Content_Types].xml, etc. — not a corrupted or reformatted file). word/document.xml was parsed directly with Python's stdlib xml.etree.ElementTree, walking every top-level w:p (paragraph) and w:tbl (table) element in document order and reading each table row's cell text via the w:t text runs. This is a native, unscrambled OOXML text layer — unlike this registry's recurring flat/scanned-PDF extraction cases (see gov-form-pdf-extraction), no rendering or glyph-position recovery was needed. The document bundles two distinct forms back to back: MVR1-MIB ("Application for Initial Registration of a Motor Vehicle", Parts A/B/C plus two declarations and an office-use panel) and ACR ("Application for Certification of Roadworthiness", a separate applicant-identification block, vehicle-classification block, declaration, and its own extensive office-use/roadworthiness-certificate panel, followed by a shared "Motor Vehicle Descriptions" glossary table used by ACR's own office-use classification).

Document structure (MVR1-MIB only; ACR not modelled — see below)

  • Part A — Particulars of Title Holder (Manufacturer, importer or builder): identification type (Traffic registration no. / Business no.), identification number, name of organisation; then a nested "Organisation Proxy/Representative" block: identification type (Traffic registration no. / ID / Foreign ID), identification number, country of issue if foreign ID, surname/name.
  • Part B — Particulars of Title Holder, structurally identical to Part A (a second/joint title holder), labelled "Surname and Initials" instead of "Surname/name" as its only textual difference.
  • Declaration by Owner (if available): role checkbox ("I the [ ] Organisation's proxy [ ] Organisation's representative"), attestation prose, signature/place/date.
  • Part C — Particulars of Title Holder (mislabelled continuing the Part A/B/C lettering, but is in fact the vehicle-particulars section): registration role (Manufacturer/Importer/Builder), NaTIS model number, chassis number/VIN, make, series name, transmission (None/Manual/Self-automatic/Automatic), main colour (White/Red/Other), gear box number, differential number, "No odometer" checkbox or odometer reading; then a "COMPLETE ONLY IF DIFFERENT FROM NaTIS MODEL" block: seated (incl. driver) and standing passenger capacity, net power, overall length/width/height, wheelbase/track/rear overhang (printed "overhand"); a note that multiple vehicles may be applied for using additional copies of this application.
  • Declaration by Title Holder: identical role-checkbox/attestation/signature/place/date structure to the Declaration by Owner.
  • FOR OFFICE USE ONLY: fees paid and receipt number, date liable for registration, nature of ownership (Under construction / MD/MIB stock), date of application, name/signature of authorizing official, name/signature of data-capturing official, serial number of registration certificate issued — all RTD staff-completed, out of scope.

Form ACR ("Application for Certification of Roadworthiness") follows immediately in the same document but is a genuinely separate application/process (testing an already-registered vehicle's roadworthiness, not registering it) and is not modelled by this schema.

Disclosed findings and interpretation choices

  1. Part B (the second/joint title holder block) is out of scope for v1.0.0. It duplicates Part A's structure exactly with no printed indication of when it applies (joint ownership, a secondary manufacturer/importer, etc.); rather than guess at its conditions, this version models a single title holder only, following this registry's established main-form-now/companion-blocks-later precedent. A future minor version could add it as an optional second title holder.
  2. representativeIdentificationType's middle option is modelled as a single swazi_id value, not two, even though the source's raw table cell literally prints "ID ID" (extra whitespace between two identical "ID" tokens). This is read as a column-merge rendering artefact, not two genuine distinct options, because this same document's own bundled ACR form prints the analogous identification-type choice cleanly as three options ("Traffic register no / Swazi ID / Foreign ID") for the same purpose (identifying an individual presenting on behalf of an organisation/vehicle) — MVR1-MIB's middle option is read as the same "Swazi ID" concept.
  3. gearBoxNumber and differentialNumber are modelled as optional, not required, since the source discloses no information on whether every vehicle type registrable on this form (e.g. some motorcycles, trailers) carries a distinct stamped number for either component.
  4. odometerReadingKm is not requiredWhen noOdometer equals false. The source prints "No odometer" then "Odometer reading" then "Or Of ___ km", read as the applicant choosing one of the two blanks directly (tick the box, or fill in the reading) rather than a declared boolean gate this schema can safely condition on; both fields are modelled as independently optional. This also sidesteps this registry's own documented notEquals-against-an-optional-field pitfall by not attempting a requiredWhen on noOdometer at all.
  5. The "COMPLETE ONLY IF DIFFERENT FROM NaTIS MODEL" fields (passenger capacity, net power, overall dimensions) are modelled as unconditionally optional, not gated behind a declared "differs from NaTIS model" boolean, since the source itself presents this as an instructional heading over a block of blanks rather than printing such a boolean field.
  6. netPower is modelled as a free-text string, not a number, since the source prints no unit (kW vs. hp) alongside this blank.
  7. The two Declaration blocks (Owner, Title Holder) are each modelled as fully required, including their identical role-checkbox/place/date fields and a documents[] attestation entry for the physical signature, following this registry's Sweden-TS8003 precedent of using a documents[] "attestation" category (with the source's own declaration prose as the statement) whenever the source prints a genuine attestation statement alongside the signature line, rather than a bare, unaccompanied "Signature:...." blank (cf. sz/ebc/special-voting-application's own disclosed choice of the opposite convention for its own bare signature line).
  8. The stray fragment " of" appearing between the "Series name" table and the "Transmission" heading in the flattened text is treated as a rendering artefact, not a field — no corresponding blank or label accompanies it in the table structure.
  9. registrationRole (Manufacturer/Importer/Builder) is modelled once, on Part C, even though the -MIB form suffix and Part A/B section headers repeat "(Manufacturer, importer or builder)" as parenthetical context; Part C's own explicit "Registration in role as" checkbox is the only place the source asks the applicant to actually choose one of the three.
  10. The "FOR OFFICE USE ONLY" panel is excluded entirely, per this registry's standing convention of modelling only the applicant-facing portion of a mixed applicant/agency form.

Conformance

24 mock scenarios exercised via an ephemeral, from-scratch conformance checker (deriving required/requiredWhen rules directly from this schema's own fields[], discarded after use, not committed): 2 positive scenarios (a business-number-identified importer with no odometer; a traffic-registration-number-identified builder with a foreign-ID representative, an "other" main colour, and an odometer reading), 2 negative controls (representativeCountryOfIssue and mainColourOther each omitted while their gating condition is true, confirming both requiredWhen gates fire), 1 unknown-field-rejected fixture, and all 19 unconditionally required: true fields individually mutated to absent against the first positive scenario, each confirmed to raise exactly 1 error. All 24 passed. Validated clean with node tools/validate.mjs and node tools/validate-ajv.mjs, individually (1/1) and as part of the full registry run (663/663). registry-index.json regenerated via npm run build-index in tools/govschema-client/.

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 Road Traffic Department or any government. The authoritative source is always the live government form and its official instructions.