PHPackages                             rakibdevs/mrz-parser - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. rakibdevs/mrz-parser

ActiveLibrary[Parsing &amp; Serialization](/categories/parsing)

rakibdevs/mrz-parser
====================

A PHP package for MRZ (Machine Readable Zones) code parser for Passport, Visa &amp; Travel Documents.

v2.0.0(1mo ago)3812.3k↓12.7%10[3 PRs](https://github.com/rakibdevs/mrz-parser/pulls)MITPHPPHP ^8.2CI passing

Since Jun 29Pushed 1mo ago1 watchersCompare

[ Source](https://github.com/rakibdevs/mrz-parser)[ Packagist](https://packagist.org/packages/rakibdevs/mrz-parser)[ Docs](https://github.com/rakibdevs/mrz-parser)[ GitHub Sponsors](https://github.com/rakibdevs)[ RSS](/packages/rakibdevs-mrz-parser/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (4)Dependencies (6)Versions (10)Used By (0)

MRZ (Machine Readable Zones) Parser for PHP
===========================================

[](#mrz-machine-readable-zones-parser-for-php)

[![Latest Version on Packagist](https://camo.githubusercontent.com/fa38cf315019feb44db3cdf294ea2a01aba1a1e489fd10d6986d62750fd060e5/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f72616b6962646576732f6d727a2d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/rakibdevs/mrz-parser)[![Tests](https://camo.githubusercontent.com/a486ae242cc4d552609bda9c1a7373407dc52196bba7e33d55730b33ee66d370/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f72616b6962646576732f6d727a2d7061727365722f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/rakibdevs/mrz-parser/actions/workflows/run-tests.yml)[![PHP Version](https://camo.githubusercontent.com/083ad7b8818f6bc29c98dd15d75cafb5624ff668a875f82126b91051b9a25a35/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f72616b6962646576732f6d727a2d7061727365722f7068703f7374796c653d666c61742d737175617265)](https://packagist.org/packages/rakibdevs/mrz-parser)[![Total Downloads](https://camo.githubusercontent.com/de00739a43bcdf47d92ea62f1beb25abde2a308d412706cbbaa9262cafdd299b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f72616b6962646576732f6d727a2d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/rakibdevs/mrz-parser)[![License](https://camo.githubusercontent.com/6b0a231221ed13e07bf052e5095a17878e4fa7c6039ae0f7beb458be87873f3c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f72616b6962646576732f6d727a2d7061727365722e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)

A PHP package for MRZ (Machine Readable Zones) code parser for Passport, Visa &amp; Travel Document (TD1 &amp; TD2).

It reads the machine-readable zone, extracts the document fields, and — new in v2 — verifies the ICAO 9303 check digits so you can tell whether the data is internally consistent.

Requirements
------------

[](#requirements)

- PHP 8.2 or higher

Installation
------------

[](#installation)

You can install the package via composer:

```
composer require rakibdevs/mrz-parser
```

Usage
-----

[](#usage)

```
use Rakibdevs\MrzParser\MrzParser;
.....
.....
$data = MrzParser::parse('Pvalidate([
    'mrz' => [new ValidMrz()],              // must be a parseable MRZ
    'mrz' => [new ValidMrz(strict: true)],  // ...with valid check digits
]);
```

Supported Document
------------------

[](#supported-document)

#### [Passport (TD3)](https://www.icao.int/publications/Documents/9303_p4_cons_en.pdf)

[](#passport-td3)

```
P
