When we read machine-readable zone (MRZ) dates, we only see the last two digits in year. Is there a rule to establish when such date is 1900’s or 2000’s? It should exist something to check MRZ validators, but I don’t find anything.


closed as off-topic by Traveller, Tor-Einar Jarnbjo, Neusser, Giorgio, user79658 Nov 9 '18 at 14:04

  • This question does not appear to be about traveling within the scope defined in the help center.
If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    this section of SE is for practical problems faced by travellers: if you are trying to design a system for passport validation it would fit better elsewhere in the network – nkjt Nov 9 '18 at 10:54
  • 4
    I'm voting to close this question as off-topic because it appears to be about the technical design of passports rather than their travel-related use – Traveller Nov 9 '18 at 11:08
  • ICAO Doc 9303 does not seem to specify any way to encode the century. – Henning Makholm Nov 9 '18 at 12:41
  • Sorry if questiin seems off-topic, but I am not agree qith it... is a question related eith icao rules, not technical – Pablo D Nov 9 '18 at 13:00

In Bulgaria for example, they are adding 40 to the month digits.

So if you are born after year 2000, say 15 september 2005 you will get:


(yy-mm-dd) where 49 is 40 + 9th month = 49

But that is probably country dependant.

  • 1
    This would be against the specification. Are you sure it actually happens in the date-of-birth field in the MRZ? – Henning Makholm Nov 9 '18 at 12:41
  • I don't know about the MRZ code. I haven't seen a passport of a youngster :) – Pepys Nov 9 '18 at 20:44

Not the answer you're looking for? Browse other questions tagged or ask your own question.