News

Laravel Identity Documents

Published
Laravel Identity Documents image

Laravel Identity Documents is a package to parse machine-readable passports (MRZ) and other documents from images with Laravel. The package then validates the MRZ by check numbers and returns a JSON string with data.

Under the hood, this package uses Google’s Cloud Vision API to do optical character recognition (OCR), which means you’ll need a Google cloud service account to use this package.

Here’s a basic example of how to parse images from the project’s readme:

use werk365\IdentityDocuments\IdentityDocuments;
 
// Returns a JSON-encoded document
IdentityDocuments::parse($request);

The parse method assumes the request object has front_img and back_img file inputs. The parse method “returns the document type, MRZ, the parsed MRZ, and all raw text found on the images.”

While this package is very new (first commit was two weeks ago at the time of writing), this could be an excellent opportunity to learn more about Google’s Cloud Vision API and serve as a foundation for learning how to implement OCR in a Laravel application.

Learn More

You can learn more about this package, get full installation instructions, and view the source code on GitHub at 365Werk/identitydocuments. Also, Google Cloud has a Get started with Vision AI guide to help you begin with the Vision API.

This package was submitted to our Laravel News Links section. Links is a place the community can post packages and tutorials around the Laravel ecosystem. Follow along on Twitter @LaravelLinks

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Filed in

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Laravel Starter Kits Now Ship with Vite+ image

Laravel Starter Kits Now Ship with Vite+

Read article
Pessimistic Locking in Laravel Eloquent with refreshForUpdate() image

Pessimistic Locking in Laravel Eloquent with refreshForUpdate()

Read article
Mask Query Bindings in Laravel Exception Messages image

Mask Query Bindings in Laravel Exception Messages

Read article
whereBinary(): Case-Sensitive MySQL Queries in Laravel image

whereBinary(): Case-Sensitive MySQL Queries in Laravel

Read article
Compile PHP to Native Binaries with TypePHP image

Compile PHP to Native Binaries with TypePHP

Read article
State of Laravel 2026 Survey Is Now Open image

State of Laravel 2026 Survey Is Now Open

Read article