Registry entry

Bangladesh Machine Readable Visa (MRV) Application Form (D.I.P. Form-4)

The Department of Immigration and Passports' (DIP) "Machine Readable Visa Application Form" (D.I.P. Form-4, "free of cost"), distributed via Bangladesh's Online MRV Portal (visa.gov.bd) for foreign nationals applying for a Bangladeshi visa. Opens Bangladesh's Visa vertical (4 of 6, alongside the already-published DMV (`bd/brta/motor-vehicle-registration-application`), Taxes (`bd/nbr/individual-income-tax-return-form-it-11ga`), and Passport (`bd/dip/e-passport-application-form`) verticals). A genuine, unauthenticated, 4-page, plain print-and-fill PDF (no AcroForm widgets, confirmed via pdfjs-dist: 0 annotations across all 4 pages) with a clean, complete extractable text layer. This single physical form is reused across five distinct application pathways selected by the applicant: New Visa, Extension of Visa, No Visa Required (NVR) declaration, Transit/On Arrival Visa, and a Police Verification/Official Use back-office block. This v1.0.0 scopes to the New Visa pathway only — the pathway a first-time foreign applicant uses to request a new Bangladeshi visa — comprising Personal Details (page 1, items 1-10), Travel Document Details (page 1, items 11-20), Payment Details (page 1, items 21-24), and the New Visa section (page 2, items 25-28). The Extension of Visa (items 29-38), No Visa Required (items 39-50), and Transit/On Arrival Visa (items 51-56) sections are alternate uses of this same physical form for different applicant categories/processes and are out of scope for this v1.0.0, disclosed in VERIFICATION.md as candidates for a future revision. The source prints no required-field asterisks or other required-field markup anywhere on the form (unlike this jurisdiction's own `bd/dip/e-passport-application-form`); this schema marks as `required` only the fields that are unconditionally essential to any visa application (identity, passport particulars, purpose/duration/arrival-date/entries of the requested visa) and leaves every other field optional, a disclosed judgment call consistent with this registry's own established `bd/brta/motor-vehicle-registration-application` and `th/dlt/vehicle-registration-application` precedent for source forms with no printed requiredness markup. None of this form's checkbox groups (Sex, Marital Status, Purpose of Visit, Intended Number of Entries) render as fillable AcroForm widgets — each is a printed option list next to unchecked boxes — but every one names an exact, exhaustive, mutually-exclusive option set in print, so each is modeled as `enum`, consistent with this registry's own `bd/dip/e-passport-application-form` `gender` precedent (a printed option list is sufficient corroboration even without a checkbox widget). Page 3's supporting-document checklist (19 checkbox items) is a single generic list shared by all five pathways; this v1.0.0 models only the items applicable to a general New Visa applicant (passport/photo/payment-slip, plus purpose-conditional recommendation letter, work permit, and sponsoring-company trade licence) as `documents[]` entries, and discloses the remaining category-specific items (marriage/birth certificate, a parent's/spouse's visa or passport copy, an affidavit, a Sri Lankan-national-specific No Objection Certificate, company income-tax/TIN documents, a bilateral-agreement reference, security clearance, and an overstay payment slip) as out of scope in VERIFICATION.md. Page 3's Police Verification and "For Official Use" blocks are DIP/consular-staff-completed, not applicant-supplied, and are excluded entirely. Page 4 (general instructions: photo specification, fee non-refundability, submission process) is informational only and not modeled. GovSchema is independent and is not affiliated with, endorsed by, or operated by the Government of Bangladesh or the Department of Immigration and Passports.

Registry entry

bd/dip/machine-readable-visa-application-form

Jurisdiction
Bangladesh · national
Version
1.0.0
Verification
draft

Authoritative source "D.I.P Form-4 (Free of cost)", "Machine Readable Visa Application Form", Government of the People's Republic of Bangladesh, Department of Immigration & Passports, distributed via the Online MRV Portal at https://visa.gov.bd (Download page: https://visa.gov.bd/DownloadMRVForm.aspx)

Machine access

Registry catalog
registry/index.jsonone record per schema id

Field reference

36 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

  • firstGivenName string required

    Full Name: First/Given Name(s)

    length: 0–100classification: pii
  • lastSurname string required

    Full Name: Last/Surname

    length: 0–100classification: pii
  • permanentAddress string required

    Permanent Address

    length: 0–300classification: pii
  • permanentAddressContactNo string

    Permanent Address: Contact No.

    length: 0–20classification: pii
  • permanentAddressEmail string

    Permanent Address: E-mail

    patternlength: 0–150classification: pii
  • addressInBangladesh string

    The source provides no dedicated boolean gate distinguishing whether the applicant already has an address in Bangladesh (e.g. a hotel booking or host address), so this and its two companion fields are left unconditionally optional.

    length: 0–300classification: pii
  • addressInBangladeshContactNo string

    Address in Bangladesh: Contact No.

    length: 0–20classification: pii
  • addressInBangladeshEmail string

    Address in Bangladesh: E-mail

    patternlength: 0–150classification: pii
  • dateOfBirth date required

    Date of Birth

    classification: sensitive-pii
  • sex enum required

    The source prints a 3-option list ("Male Female Others") next to unchecked boxes, not a fillable AcroForm widget; the printed option list is treated as sufficient corroboration for an enum, consistent with this registry's own `bd/dip/e-passport-application-form` `gender` precedent.

    enum: Male | Female | Othersclassification: pii
  • placeOfBirth string required

    Place of Birth

    length: 0–150classification: sensitive-pii
  • presentNationality string required

    Modeled as free-text: the source prints only a blank line with no embedded country-selector option list (unlike the AcroForm-based `bd/dip/e-passport-application-form`, this form has no combobox widgets at all).

    length: 0–100classification: pii
  • nationalityAtBirth string

    Nationality at Birth

    length: 0–100classification: pii
  • occupation string

    Occupation

    length: 0–150
  • maritalStatus enum

    The source prints a 4-option list next to unchecked boxes ("Unmarried Married Widower/Widow Divorced"); "Widower/Widow" is printed as a single combined option, not two separate ones.

    enum: Unmarried | Married | Widower/Widow | Divorcedclassification: pii
  • passportNumber string required

    Passport No.

    length: 0–30classification: sensitive-pii
  • typeOfPassport string

    Modeled as free-text: the source prints only "Type of Passport" with no adjacent option list or checkbox (unlike `sex`/`maritalStatus`/`purposeOfVisit`/`intendedNumberOfEntries`, which each name an explicit option set in print).

    length: 0–50
  • passportPlaceOfIssue string required

    Passport: Place of Issue

    length: 0–150
  • passportDateOfIssue date required

    Passport: Date of Issue

  • passportDateOfExpiry date required

    Passport: Date of Expiry

  • dateOfLastVisitToBangladesh date

    Not applicable to a genuine first-time visitor; left optional since the source provides no boolean gate for prior-visit status.

  • lastVisaNumber string

    Companion to dateOfLastVisitToBangladesh; applicable only if the applicant has held a prior Bangladeshi visa.

    length: 0–30
  • lastVisaDateOfIssue date

    Last Visa: Date of Issue

  • lastVisaPlaceOfIssue string

    Last Visa: Place of Issue

    length: 0–150
  • lastVisaDateOfExpiry date

    Last Visa: Date of Expiry

  • bankNameAndBranch string

    Payment-details block. Some applicant nationalities/purposes are visa-fee-exempt per Bangladeshi consular practice, and the source provides no boolean fee-applicability gate, so this and its three companion payment fields are left optional.

    length: 0–200
  • paymentReferenceNumber string

    Cheque/Bank Transfer/Chalan/Scroll No.

    length: 0–50
  • amountDeposited number

    The source prints the unit as a parenthetical "(Taka/ US$)" immediately after this item, with no separate checkbox or field to select which currency; the amount and its currency cannot be disentangled from a single printed blank, so no separate currency field is modeled.

    range: 0–∞
  • paymentDate date

    Payment Date

  • purposeOfVisit enum required

    New Visa section. The source prints a 9-option list next to unchecked boxes, including an "Others (Please Specify)" catch-all with a companion free-text line (see purposeOfVisitOtherSpecify).

    enum: 9 values
  • purposeOfVisitOtherSpecify string

    Purpose of Visit: Other (Please Specify)

    length: 0–200
  • durationOfProposedStay string required

    Modeled as free-text: the source prints no unit (days/weeks/months) next to this blank line, unlike several other fields in this registry that print an explicit unit.

    length: 0–50
  • tentativeDateOfArrival date required

    Tentative Date of Arrival in Bangladesh

  • intendedNumberOfEntries enum required

    The source prints a 3-option list next to unchecked boxes.

    enum: Single | Re-Entry | Multiple
  • declarationPlace string

    Companion to the declarationAttestation document, printed on the same line as the applicant's signature and declarationDate.

    length: 0–150
  • declarationDate date

    Companion to the declarationAttestation document, printed on the same line as the applicant's signature and declarationPlace.

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-13
  • maturity.level: structural-reference

This is GovSchema Standard Research cycle GOV-2675 (child issue GOV-2677). It opens Bangladesh's Visa vertical (4 of 6), using the Department of Immigration and Passports' (DIP) "Machine Readable Visa Application Form" (D.I.P Form-4). Bangladesh's DMV, Taxes, and Passport verticals are already published.

Candidate scouting (this cycle)

Three candidates were scouted in parallel this cycle: Bangladesh Business Formation (via RJSC's company-incorporation forms), Bangladesh Visa (this schema), and Greece's Passport vertical. Bangladesh Visa was the strongest: an official government-portal PDF with a clean text layer, independently corroborated by a byte-near-identical embassy mirror. RJSC's incorporation forms were a viable but weaker candidate (the numbered forms themselves are only mirrored on a third-party legal-services site, not served directly from rjsc.gov.bd/app.roc.gov.bd, though the official RJSC FAQ page corroborates their content) — left as an open backlog candidate for a future cycle. Greece's Passport vertical is a confirmed weak/likely-dead-end candidate: the application process is strictly in-person at Hellenic Police stations, and the only downloadable artifact is a non-fillable scanned specimen image (zero AcroForm/text layer); the online myPhoto adjunct is SSO-gated and photo-only. Not pursued.

Source verification (independently re-derived, not copied from the scouting pass)

  • Source PDF: https://visa.gov.bd/Img/MRV_FORM.pdf — fetched independently this cycle via a plain curl (no TLS-verification workaround needed, unlike several other Bangladesh government hosts already in this registry):
    • HTTP 200, Content-Type: application/pdf, 124451 bytes.
    • sha256: fb2d675a5a98f7ed9a06a11699cdf426cb6a8a26d34ca1c2da89fd58fa353f7d (computed via sha256sum on the freshly-downloaded file).
  • Corroborating mirror: https://www.bangladeshembassy.org.sa/downloads/visa_Form.pdf — also independently fetched this cycle: HTTP 200, Content-Type: application/pdf, 124473 bytes, sha256 2c3701d45a47600eb44b1fc6dc0254812d82fcc11b3b8ed740f1842a242f38f2. Not byte-identical to the primary source (22-byte difference), consistent with an embedded metadata/producer-string difference between two independently-hosted copies of the same form, but the near-identical byte size and matching page content confirm this is genuinely the same DIP Form-4, not a coincidentally similar document.
  • Parsed the downloaded PDF with pdfjs-dist@3.11.174 (legacy build), installed fresh in a scratch directory (not a repo dependency):
    • getFieldObjects() returned nullno AcroForm.
    • getAnnotations() returned 0 for every one of the 4 pages — a plain print-and-fill document, not a fillable form.
    • getTextContent() returned a full, clean English text layer across all 4 pages: 1259 / 1309 / 1093 / 1278 characters (4939 total).
    • Every field below was extracted directly from this text layer; sourceRef citations quote the source's own item numbers and printed labels verbatim.
    • Grepped the full extracted text for the * character (a common required-field marker in this registry's other Bangladesh-sourced forms, e.g. bd/dip/e-passport-application-form): zero occurrences. This form prints no required-field asterisks or other requiredness markup anywhere.

Form structure and scoping decision

This is a single physical 4-page form reused across five distinct application pathways, selected by which section the applicant fills in:

  • Page 1: Personal Details (items 1-10), Travel Document Details (items 11-20), Payment Details (items 21-24) — common to every pathway.
  • Page 2: New Visa (items 25-28), Extension of Visa (items 29-38), No Visa Required/NVR (items 39-50), Transit/On Arrival Visa (items 51-56).
  • Page 3: a shared supporting-document Check List, a Declaration statement + Place/Date/Signature line, a Police Verification block, and a "For Official Use" block.
  • Page 4: General Instructions (photograph spec, fee non-refundability, submission process) — informational only.
In scope (36 fields[] + 8 documents[] entries)

This v1.0.0 scopes to the New Visa pathway only — the pathway a first-time foreign applicant uses to request a new Bangladeshi visa: Personal Details, Travel Document Details, Payment Details, and the New Visa section (items 25-28). This is the pathway matching this registry's "Online VISA's to destination countries from origin countries" research brief.

Checkbox-printed option groups with no AcroForm widget but an explicit, exhaustive, mutually-exclusive printed option list are modeled as enum, consistent with this registry's own bd/dip/e-passport-application-form gender precedent (a printed option list is sufficient corroboration even without a checkbox widget): sex (Male/Female/Others), maritalStatus (Unmarried/Married/Widower-Widow/Divorced — "Widower/Widow" is printed as one combined option), purposeOfVisit (9 options including an "Others (Please Specify)" catch-all, gating purposeOfVisitOtherSpecify via requiredWhen), and intendedNumberOfEntries (Single/Re-Entry/Multiple).

Fields with only a blank line and no printed option list (typeOfPassport, presentNationality, nationalityAtBirth, occupation, durationOfProposedStay) are modeled as free-text string, consistent with this registry's bd/brta/th/dlt precedent of not inventing enum value sets for blank lines with no printed options.

Item 23's "Amount deposited (Taka/ US\$)" prints its unit as a parenthetical covering two possible currencies with no separate selector — the amount and currency cannot be disentangled from a single printed blank, so no separate currency field is modeled; amountDeposited is a plain number.

The Declaration statement (page 3) is modeled as an attestation document (declarationAttestation), with its printed Place/Date companions modeled as declarationPlace/declarationDate fields, mirroring this jurisdiction's own bd/dip/e-passport-application-form and bd/brta precedent for modeling a sworn declaration as an attestation document rather than a plain field.

Page 3's Check List (19 checkbox items shared by all five pathways) is modeled for the subset applicable to a general New Visa applicant: passportCopyWithLastVisaAndArrivalPage (required — universal), page 1's photograph-placement box plus page 3's "Photo" checklist item, folded into one applicantPhotograph document (required — universal), paymentSlip (optional — some nationalities/purposes are visa-fee-exempt), recommendationLetterFromMinistryOrAuthority (optional — typically Official/Diplomatic/Business), workPermit (optional — Employment purpose), tradeLicenseOfSponsoringCompany (optional — Business/Investment purpose sponsored by a Bangladeshi company), and otherSupportingDocument (a catch-all).

Requiredness judgment call, disclosed

The source prints no required-field asterisks or other requiredness markup anywhere (confirmed by the zero-occurrence * grep above), unlike this jurisdiction's own bd/dip/e-passport-application-form. Given this task's own instruction to base requiredness on the source, and finding none, only fields unconditionally essential to any visa request are marked required: true: applicant identity (firstGivenName, lastSurname, dateOfBirth, sex, placeOfBirth, presentNationality), passport particulars (passportNumber, passportPlaceOfIssue, passportDateOfIssue, passportDateOfExpiry), and the requested visa's own particulars (purposeOfVisit, durationOfProposedStay, tentativeDateOfArrival, intendedNumberOfEntries). Every other field (addresses, contact details, marital status, occupation, nationality at birth, payment particulars, and previous-visit/previous-visa history) is left optional. This is a disclosed judgment call, consistent with this registry's own bd/brta/motor-vehicle-registration-application and th/dlt/vehicle-registration-application precedent for source forms without printed requiredness markup.

Out of scope, disclosed
  • Extension of Visa (items 29-38), No Visa Required/NVR (items 39-50), Transit/On Arrival Visa (items 51-56) — alternate uses of this same physical form for different applicant categories/processes, not the first-time New Visa request this v1.0.0 scopes to. Flagged as candidates for a future revision, not modeled here.
  • Check List items tied to specific applicant categories not modeled: Marriage Certificate, Birth Certificate, a parent's/spouse's Visa or Passport Copy, an Affidavit, a No Objection Certificate from the Sri Lankan High Commission (nationality-specific), Income Tax Certificate/TIN/TIN certificate of a sponsoring company, a Bi-Lateral/ Multilateral Agreement reference, Security Clearance/Security Certificate, and an Overstay payment slip — each tied to a specific applicant category (spousal dependents, a specific nationality, or a company-sponsored investor scenario) or to the NVR/Extension pathways this v1.0.0 excludes.
  • Police Verification block (page 3) — completed by a Bangladeshi police Inquiry Officer during processing, not applicant-supplied.
  • "For Official Use" block (page 3) — Reference No., Fee amount, Visa No./Date/Expiry, entry-type adjudication, and Authorized Signature — all completed by DIP/consular staff at issuance, not applicant-supplied.
  • Page 4 (General Instructions) — informational prose (photograph specification, fee non-refundability, submission process), not a data-entry section.
  • No signature-only line modeled as a field. The applicant's signature on page 3 has no adjacent fillable date sub-line of its own beyond the already-modeled declarationDate, consistent with this registry's established convention of not inventing a field for a bare signature line.

Conformance run

Two hand-authored valid fixtures under conformance/bd/dip/machine-readable-visa-application-form/1.0.0/:

  • valid-tourist-first-time-applicant.json — a first-time tourist applicant, single entry, minimal optional fields populated (no previous visit/visa history, no payment-particulars block).
  • valid-business-returning-applicant.json — a returning business applicant exercising previous-visit/previous-visa fields, marital status, payment particulars, the declaration Place/Date companions, and the tradeLicenseOfSponsoringCompany document.

Both were checked with a from-scratch Node conformance checker (conformance-check.mjs, not committed — a disposable script, per this registry's own established practice) validating required/requiredWhen/type/validation.{enum,minimum,maximum,pattern, minLength,maxLength} directly against spec/v0.3/SPEC.md's own rules:

`` $ node conformance-check.mjs schema.json \ valid-tourist-first-time-applicant.json \ valid-business-returning-applicant.json valid-tourist-first-time-applicant.json: 0 error(s) valid-business-returning-applicant.json: 0 error(s) ``

Six mutation-control fixtures, each isolated to raise exactly one error:

  • mutation-control-missing-first-given-name.json — drops firstGivenName (a static required: true field) from the tourist valid fixture.
  • mutation-control-missing-passport-number.json — drops passportNumber.
  • mutation-control-invalid-enum-sex.json — sets sex to "Unspecified", not one of the enum's 3 values.
  • mutation-control-invalid-enum-entries.json — sets intendedNumberOfEntries to "Unlimited", not one of the enum's 3 values.
  • mutation-control-invalid-type-date-arrival.json — sets tentativeDateOfArrival to the string "next month" instead of a YYYY-MM-DD date.
  • mutation-control-missing-purpose-other-specify.json — sets purposeOfVisit to "Others" without providing the requiredWhen-gated purposeOfVisitOtherSpecify companion field.

`` $ node conformance-check.mjs schema.json \ mutation-control-missing-first-given-name.json \ mutation-control-missing-passport-number.json \ mutation-control-invalid-enum-sex.json \ mutation-control-invalid-enum-entries.json \ mutation-control-invalid-type-date-arrival.json \ mutation-control-missing-purpose-other-specify.json mutation-control-missing-first-given-name.json: 1 error(s) - firstGivenName: required but missing mutation-control-missing-passport-number.json: 1 error(s) - passportNumber: required but missing mutation-control-invalid-enum-sex.json: 1 error(s) - sex: 'Unspecified' not in enum ["Male","Female","Others"] mutation-control-invalid-enum-entries.json: 1 error(s) - intendedNumberOfEntries: 'Unlimited' not in enum ["Single","Re-Entry","Multiple"] mutation-control-invalid-type-date-arrival.json: 1 error(s) - tentativeDateOfArrival: expected YYYY-MM-DD date string mutation-control-missing-purpose-other-specify.json: 1 error(s) - purposeOfVisitOtherSpecify: required but missing ``

All six negative controls raised exactly one error each, and neither valid scenario raised an unexpected error.

Both registry validators were run against the schema document and pass:

``` $ node tools/validate.mjs registry/bd/dip/machine-readable-visa-application-form/1.0.0/schema.json ok registry/bd/dip/machine-readable-visa-application-form/1.0.0/schema.json 1/1 document(s) passed.

$ node tools/validate-ajv.mjs registry/bd/dip/machine-readable-visa-application-form/1.0.0/schema.json ok registry/bd/dip/machine-readable-visa-application-form/1.0.0/schema.json [v0.3] 1/1 document(s) validated against the meta-schema (ajv 2020-12). ```

A full registry validation run (node tools/validate.mjs with no argument, covering every published document) passes: 401/401 document(s), 3/3 mapping.json companions.

tools/govschema-client/registry-index.json was regenerated via npm run build-index inside tools/govschema-client/ (401 entries).

Scope and jurisdiction notes

  • Opens Bangladesh's Visa vertical (4 of 6); DMV, Taxes, and Passport are already published. Business Formation and National ID remain screened/backlog.
  • jurisdiction.level is national — DIP is Bangladesh's national passport/visa authority.
  • process.type is application; process.language is en — the source PDF's own text layer is entirely in English.
  • Companion candidates for a future cycle: this cycle's own RJSC Business-Formation lead (open backlog, see "Candidate scouting" above); Bangladesh's National ID gap (not screened this cycle); and, for this schema specifically, a future revision modeling the Extension of Visa/NVR/Transit pathways this v1.0.0 excludes.

Re-verification

Per the practice's cadence, nextReviewBy is set to 2027-01-13 (6 months). A future review should prioritize: (1) confirming visa.gov.bd/Img/MRV_FORM.pdf has not been silently replaced with a revised edition; (2) checking whether the Online MRV Portal has moved to a genuine online-submission workflow beyond this print-and-fill PDF; (3) whether a future cycle wants to model the Extension of Visa/NVR/Transit pathways excluded here as companion schemas or additional scope on this same document.

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