Products

laravel-vin

Free VIN decoding for Laravel. Pass in a VIN, get back year, make, model, and trim from NHTSA’s public database

$ composer require alwayscurious/laravel-vin
→ Vin::lookup('JT2SW21M0M0012345') … 1991 TOYOTA MR2 Coupe

What it does

Vehicle data, one call

Year, make, model, trim, and body class from a single lookup. Step up to engine, body, safety, and plant detail when your product needs it.

Clean VINs at intake

A form rule rejects malformed VINs, and an optional ISO 3779 check-digit test catches typos before they reach your records.

Whole lots at once

Made for inventory imports and fleet uploads: lookupMany() decodes a batch of VINs in a single request.

Cached by default

Repeat lookups come from cache (24 hours out of the box), so pages stay fast and a popular VIN isn’t fetched twice in a day.

Failures you can act on

Typed failure reasons separate a bad VIN from a temporary outage, with retries built in so your app knows whether to ask the user or try again.

Built the Laravel way

Auto-discovered on Laravel 11–13, with a facade, lookup events, and Vin::fake() so your test suite never touches the network.

About Always Curious

Always Curious is a strategy-led team of innovators who design and build the systems and brands that set the stage for evolution and growth. We combine technical excellence with deep attention to the human workflows and business objectives that systems exist to serve.

If your company is looking for a powerful tool to add to your Laravel application, reach out to [email protected].