Registry entry

Ireland International Driving Permit (IDP)

Apply in person for an Irish International Driving Permit (IDP) — a translation of a full Irish or EU/EEA driving licence recognized in countries outside the EU/EEA. Since 18 May 2026 the National Driver Licence Service (NDLS), delivered under statute by the Road Safety Authority (RSA), is the sole issuer, having taken over from the AA (the Automobile Association), which issued IDPs in Ireland until that date. There is no online application: the applicant books an appointment at one of 34 NDLS centres, completes parts 1-4 of the IDP application form in advance (parts 5-6 — the declaration/signature and the NDLS/official-use section — are completed at the centre), and brings supporting documentation. The permit is issued the same day. This document models that in-person process at the field/requirement level from the IDP application form and NDLS's own published guidance; it never submits anything or implies government endorsement of any organization beyond NDLS/RSA.

Registry entry

ie/dttas/international-driving-permit

Jurisdiction
Ireland · national
Version
1.0.0
Verification
draft

Authoritative source NDLS International Driving Permit (IDP) Application Form (In-Person - NDLS Centres), file NDLS_Int_Driving_Permit_App_Form_v3.pdf

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

30 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.

Eligibility

  • holdsFullIrishOrEuEeaDrivingLicence boolean required

    Available to Irish residents with a full Irish driving licence and to all EU/EEA licence holders resident in Ireland.

  • isLearnerPermitHolder boolean required

    IDPs cannot be issued to learner permit holders.

  • isNonEuEeaLicenceHolder boolean required

    An IDP cannot be issued to holders of a licence from outside the EU/EEA (a foreign, non-EU/EEA licence must first be exchanged for an Irish one).

  • licenceValidForAtLeastThreeMoreMonths boolean required

    The IDP will expire when the licence expires if that is sooner than 12 months; at least 3 months must remain on the licence at the time of application.

  • hasTwelveOrMorePenaltyPoints boolean required

    An IDP may be issued for an endorsed licence only once there are not 12 penalty points or more on it.

  • hasActiveDrivingBan boolean required

    If the applicant's driving ban is still in force, an IDP cannot be issued.

Applicant and contact details

  • fullName string required

    Must match the name on the applicant's driving licence.

    length: 1–200classification: pii
  • dateOfBirth date required

    Printed on the form as Day / Month / Year.

    classification: pii
  • countryOfBirth string required

    Country of birth

    length: 1–100classification: pii
  • address string required

    The applicant's current residential address.

    length: 1–300classification: pii
  • contactPhoneNumber string required

    Contact phone number

    length: 5–30classification: pii
  • emailAddress string required

    Email address

    length: 3–200classification: pii

Driving licence details

  • drivingLicenceType enum required

    Which licence type is held; an EU/EEA licence holder resident in Ireland additionally needs proof of address (see addressDiffersFromLicenceAddress).

    enum: irish | eu_eea
  • drivingLicenceNumber string required

    Driving licence number

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

    Licence issuing country

    length: 1–100
  • licenceCategoriesHeld string required

    Example: B, C, D.

    length: 1–50
  • addressDiffersFromLicenceAddress boolean required

    Gates the Proof of Address document requirement below; also true whenever the applicant holds an EU/EEA licence and is resident in Ireland (that combination independently requires proof of address).

Permit type and travel

  • permit1926Requested boolean optional

    Only required if travelling to Brazil, Burundi, Iraq, Nigeria, or Somalia. At least one of permit1926Requested or permit1949Requested must be true; the source form's condition grammar has no operator to enforce this directly, so it is recorded here descriptively (see VERIFICATION.md).

  • permit1949Requested boolean optional

    Required for all other (non-1926-list) destination countries. At least one of permit1926Requested or permit1949Requested must be true.

  • countriesIntendedToVisit string required

    Countries intended to visit

    length: 1–300
  • dateOfDeparture date required

    An IDP cannot be forward-dated more than 3 months from the date the application is received by NDLS.

  • isReplacementForLostOrStolenIdp boolean required

    Only one IDP may be issued per licence per year unless the applicant is seeking a replacement for an issued permit, in which case a Garda report of the original IDP's loss must accompany the application (see the gardaReportOfLoss document).

Fee and payment

  • idpApplicationFeeEur number required

    Fixed fee of €15, paid by card only, on the day of the appointment.

    range: 15–15classification: financial
  • paymentMethod enum required

    Card only; NDLS does not accept cash for the IDP fee.

    enum: card

Declaration at the NDLS centre appointment

  • declarationInformationTrueAndCorrect boolean required

    Completed at the NDLS centre appointment (Part 5), not in advance.

  • declarationUnderstandsTwelveMonthValidity boolean required

    I understand that an International Driving Permit is valid for 12 months only

  • declarationUnderstandsOnePermitPerYear boolean required

    I understand that only one permit may be issued per year

  • declarationHoldsValidLicenceAtApplication boolean required

    I hold a valid driving licence at the time of application

  • declarationAcceptsIdpConditions boolean required

    I accept the conditions for issue of an IDP

  • declarationDate date required

    The date the applicant signs the declaration at the NDLS centre.

Verification record

This file is the source-review record for this document version, per the manual-source-review-v1 practice.

Current claim

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

The document was derived from and cross-checked against the official/primary sources below. The full field-by-field comparison the practice requires has been completed once against those sources (this record), but not yet by a second, independent reviewer — so status remains draft, not verified.

Sources examined

  • Document (id, version): ie/dttas/international-driving-permit / 1.0.0
  • Spec version: GovSchema 0.3.0
  • Authority: Road Safety Authority, National Driver Licence Service (NDLS). As of 18 May 2026, NDLS is the sole issuer of Irish IDPs, having taken over from the AA (a private motoring association) — a genuine government body, not a third-party operator, so this document does not use GSP-0020's authority.operatedBy.
  • Primary sources:
  • Access note (bot-block encountered and defeated): www.ndls.ie sits behind a Cloudflare Turnstile "managed challenge" that returns HTTP 403 / "Just a moment..." to a plain fetch or WebFetch. A real headless-Chromium session (Playwright, navigator.webdriver patched out, a real desktop Chrome user agent) resolved the HTML guidance pages after ~5 seconds. The PDF asset path (/images/PDF_Documents/...) required a further step: an in-context request.get() still returned 403 (the Turnstile challenge does not appear to gate that path the same way over XHR), but navigating the page itself directly to the PDF URL triggered a genuine browser download event, whose bytes were captured via Playwright's page.waitForEvent( 'download') / download.saveAs() — a new technique for this class of block, distinct from the pure-JS auto-passing challenges defeated in GOV-803/GOV-960's browser walkthroughs.
  • Retrieved / reviewed: 2026-07-04 (all sources fetched and read live at authoring time).
  • Reviewer: GovSchema Engineering (Standards Engineer, initial authoring source-review).

What was confirmed against the source

| Source element | Field(s) | |---|---| | "It is available to Irish residents who hold a current full Irish driving licence and to all EU or EEA licence holders who are resident in Ireland... It cannot be issued to learner permit holders or non-EU/EEA licence holders." | holdsFullIrishOrEuEeaDrivingLicence, isLearnerPermitHolder, isNonEuEeaLicenceHolder (eligibility exits) | | "you must have at least 3 months remaining on your licence to apply" | licenceValidForAtLeastThreeMoreMonths | | "An IDP may be issued for an endorsed licence once there are not 12 penalty points or more on it." / "If an IDP applicant's driving ban is still in force, an IDP cannot be issued" | hasTwelveOrMorePenaltyPoints, hasActiveDrivingBan | | Form Part 1 (Applicant Details) | fullName, dateOfBirth, countryOfBirth | | Form Part 2 (Contact Details) | address, contactPhoneNumber, emailAddress | | Form Part 3 (Driving Licence Details) | drivingLicenceType, drivingLicenceNumber, licenceIssuingCountry, licenceCategoriesHeld | | "Proof of Address requirement... only required where the address on your driving licence differs from your current address, or where you hold an EU/EEA driving licence and are resident in Ireland... a recent domestic bill issued within the last 6 months" | addressDiffersFromLicenceAddress field; proofOfAddress document (requiredWhen, freshness.issuedWithin: P6M) | | Form Part 4 (International Driving Permit): "1926 - Only required if traveling to Brazil, Burundi, Iraq, Nigeria, Somalia" / "1949 - Required for all other countries" | permit1926Requested, permit1949Requested | | "Only one IDP may be issued per licence per year unless you are looking for a replacement for an issued permit, in which case the IDP application form must be accompanied by a Garda report of the original IDP's loss." | isReplacementForLostOrStolenIdp field; gardaReportOfLoss document (requiredWhen) | | "IDP application fee (15 euro - card payment only on the day)" | idpApplicationFeeEur, paymentMethod | | Form Part 5 (Applicant Declaration), all five printed assertions plus signature/date | declarationInformationTrueAndCorrect, declarationUnderstandsTwelveMonthValidity, declarationUnderstandsOnePermitPerYear, declarationHoldsValidLicenceAtApplication, declarationAcceptsIdpConditions, declarationDate | | Guidance Notes: "Applicants must bring: A valid Irish or EU/EEA driving licence... One passport-sized photograph" | drivingLicence, passportSizedPhoto documents |

Conformance test run

conformance/ie/dttas/international-driving-permit/1.0.0/application-packet.json models an eligible full-Irish-licence holder applying for a first-time (not replacement) 1949 Convention IDP. A scripted evaluator (/tmp/conformance_check.mjs at authoring time, not committed — it reimplements the GSP-0013 condition grammar: all/any/not, the seven conditionLeaf comparison operators, requiredWhen on fields and documents, and step transitions) checked the packet against the schema and found 0 violations across 24 fields + 5 documents. Four mutation tests confirmed the schema's conditional logic actually fires, not just that the happy path passes:

  1. addressDiffersFromLicenceAddress = trueproofOfAddress document becomes required. Confirmed.
  2. drivingLicenceType = 'eu_eea' (with addressDiffersFromLicenceAddress left false) → proofOfAddress still becomes required, via the any condition's second branch. Confirmed.
  3. isReplacementForLostOrStolenIdp = truegardaReportOfLoss document becomes required. Confirmed.
  4. hasActiveDrivingBan = true → the eligibility step exits with exitReason: "not-eligible" instead of continuing to applicant_details. Confirmed.

Full console output is saved as conformance/ie/dttas/international-driving-permit/1.0.0/application-packet.txt.

A known grammar gap (documented, not silently worked around)

The source form allows ticking either or both of the 1926/1949 permit-type boxes ("tick below the appropriate permit(s) you require"), with the rule "at least one must be ticked." The v0.3 condition grammar has no operator for "at least one of these two independent booleans is true" (crossFieldValidation's requirePresent/requireAbsent test field presence, not a boolean's value). Rather than force a wrong-fit rule the way a prior cycle's notEquals-against-an-absent-field bug did (see the notequals-empty-string-absent-field-bug lesson), this constraint is recorded in both fields' description only, not enforced structurally. Flagged here so a future spec proposal (a requireAtLeastOne condition operator, or similar) has a concrete motivating case.

What remains out of scope

  • Live confirmation of the appointment-booking phone flow (0818 919 090) — no online booking form exists to walk through; the guidance/form-level detail above is the full public surface.
  • Part 6 (NDLS/Official Use Only: centre location, booklet serial number, verifying officer name/signature) is agency-internal and out of scope, per the boundary that GovSchema models applicant-facing input, not government back-office record-keeping.
  • The AA's own historical IDP process (superseded 18 May 2026) is out of scope; this document models the current NDLS process only.

Next review

nextReviewBy: 2027-01-04, or sooner if NDLS changes the fee, the eligibility rules, or publishes an online application channel.

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 Safety Authority, National Driver Licence Service or any government. The authoritative source is always the live government form and its official instructions.