Hyundai VIN Location and VIN OCR API

Where to find the VIN on a Hyundai, what its first characters mean, and how to read it from a photo with an API and decode the model year.

Where the VIN Is on a Hyundai

On Hyundai vehicles sold in North America, the 17-character VIN is on a plate at the lower driver-side corner of the windshield, readable from outside, and on the certification label in the driver-side door jamb. It also appears on the title, registration, and insurance card. Hyundai’s Korean and Alabama-built vehicles carry different prefixes, which matters for import and warranty records.

Reading a Hyundai VIN from a Photo

Common Hyundai manufacturer identifiers include KMH (Korea-built), 5NP (US-built sedans), 5NM (US-built SUVs). Send a photo of the windshield plate, door label, or document to the VIN OCR API; it returns the VIN and where it was read from. To get make, model, and year, pass the VIN to NHTSA’s free vPIC API. Try it first with the free VIN scanner.

Where This Fits

  • Dealer trade-ins: Capture Hyundai VINs from the windshield during appraisal without typing 17 characters.
  • Insurance and claims: Read the VIN from the door label or registration card and attach it to the policy or claim.
  • Fleet and rental lots: Audit lots by photographing windshield plates from outside the vehicle.
Need more testing? Create a free account to get 200 free credits (equals 200 VIN scans).

Read the VIN, Then Decode It

Extract the VIN with StructOCR, then decode make, model, and year with NHTSA vPIC.

Prerequisite: Python 3.9+, `pip install requests`, and a STRUCTOCR_API_KEY

PYTHON EXAMPLE
import base64
import os
import requests

with open("vin.jpg", "rb") as image_file:
    image = base64.b64encode(image_file.read()).decode("ascii")

# 1. Read the VIN from the photo with StructOCR
ocr = requests.post(
    "https://api.structocr.com/v1/vin",
    headers={"x-api-key": os.environ["STRUCTOCR_API_KEY"]},
    json={"img": image},
    timeout=30,
)
ocr.raise_for_status()
vin = ocr.json()["data"]["vin"]

# 2. Decode make, model, and year with NHTSA's free vPIC API
decoded = requests.get(
    f"https://vpic.nhtsa.dot.gov/api/vehicles/DecodeVinValues/{vin}?format=json",
    timeout=30,
).json()["Results"][0]
print(vin, decoded["Make"], decoded["Model"], decoded["ModelYear"])

Technical Specs

  • •Endpoint: POST https://api.structocr.com/v1/vin
  • •Authentication: x-api-key request header
  • •Inputs: JPG, PNG, or WebP as Base64 JSON; maximum 4.5MB
  • •Price: 1 credit per successful request; failed requests are not billed
  • •Free trial: 200 free credits on sign-up, no credit card required
  • •Output: vin, confidence, and carrier_type (for example windshield or door_jamb)

Key Features

  • •VIN-aware reading: I, O, and Q never appear in VINs, which removes a common source of OCR confusion.
  • •Check digit: North American VINs carry a check digit in position 9 that you can validate after extraction.
  • •Model year: Position 10 encodes the model year on a 30-year cycle.
  • •Decoding is separate: The API reads the VIN; decoding Hyundai-specific trim and engine details is done by a VIN decoder.

Sample VIN Response

Illustrative response using the Wikipedia sample VIN. The API returns the VIN as read; decoding happens in a separate step.

{
  "success": true,
  "data": {
    "vin": "1M8GDM9AXKP042788",
    "confidence": "High",
    "carrier_type": "windshield"
  }
}

Frequently Asked Questions

Where is the VIN on a Hyundai?

At the base of the windshield on the driver side, on the driver-side door-jamb label, and on registration and insurance documents.

What do the first three characters of a Hyundai VIN mean?

They are the World Manufacturer Identifier. Common Hyundai prefixes include KMH (Korea-built), 5NP (US-built sedans), 5NM (US-built SUVs).

Does the API return make and model?

No. It returns the VIN read from the image. Use a VIN decoder such as NHTSA vPIC for make, model, and year.

You May Also Like

Related tutorials, platform guides, and comparisons

Tutorial

Porsche VIN Location and VIN OCR API

Where to find the VIN on a Porsche, what its first characters mean, and how to read it from a photo with an API and decode the model year.

VIN
Tutorial

GMC VIN Location and VIN OCR API

Where to find the VIN on a GMC, what its first characters mean, and how to read it from a photo with an API and decode the model year.

VIN
Tutorial

Reading Pre-1981 Classic Car VINs and Serial Numbers

Where the VIN is on a classic car (pre-1981), how to photograph it so it reads reliably, and how to extract it with a VIN OCR API.

VIN
Tutorial

VIN Model Year Codes: The 10th Character Table

Decode the model year from the 10th VIN character, including the 30-year cycle and how to tell 1990s vehicles from 2020s vehicles.

VIN
Tutorial

Go VIN OCR API

Upload an image for a free test! Tutorial: How to use the StructOCR Go Client to extract data from VIN (Vehicle Identification Number)s. Includes code samples and JSON schema.

Go · VIN
Tutorial

Java VIN OCR API

Tutorial: How to use the StructOCR Java Client to extract data from VINs. Upload an image for a free test! Includes code samples and JSON schema.

Java · VIN
Tutorial

Infiniti VIN Location and VIN OCR API

Where to find the VIN on a Infiniti, what its first characters mean, and how to read it from a photo with an API and decode the model year.

VIN
Tutorial

Python VIN OCR API

Tutorial: How to use the StructOCR Python SDK to extract data from VIN (Vehicle Identification Number)s. Upload an image for a free test! Includes code samples and JSON schema.

Python · VIN
Tutorial

C# VIN OCR API

Upload an image for a free test! Tutorial: How to use the StructOCR C# Client to extract data from VIN (Vehicle Identification Number)s. Includes code samples and JSON schema.

C# · VIN
Tutorial

ICAO Doc 9303: A Developer’s Guide to Passport Data

What ICAO Doc 9303 standardizes for passports and ID cards, from the data page layout and MRZ to the chip, and what it means for OCR integrations.

Passport

Technical Comparisons & Integrations

Explore platform integrations and competitive analysis

From tutorial to production in 5 minutes.

You've seen the code. Now get your API key, grab your 200 free credits, and see it work with your own images. No credit card required.

Instant Access Cancel Anytime No Credit Card