RV and Boat Rental License Scanning with PDF417

Scan the renter’s license, confirm document_kind is driver_license, pre-fill the contract, and check expiry before handover. Barcode data is captured for confirmation and is not treated as proof of identity or authenticity.

200 free credits = 100 Driver License scans, no credit card. Then from $5 for 500 credits, pay as you go. See pricing

RV and Boat Rental License Scanning with PDF417 workflow using a fictional US card back and structured AAMVA JSON

The Identity Data Problem for RV and boat rentals

Renters of RVs and boats must show a valid driver license, and agents copy details into long rental contracts. Teams also need to keep a readable barcode separate from a verified person or authentic card; mixing the two creates compliance and product risk.

Deterministic Barcode Parsing with Human Confirmation

Scan the renter’s license, confirm document_kind is driver_license, pre-fill the contract, and check expiry before handover. StructOCR’s PDF417 API decodes the barcode on the back of US driver licenses and parses the AAMVA record without asking a generative model to reconstruct unreadable values. Only a driver license is acceptable here, so check that document_kind is driver_license before continuing. Boating-safety certificates and vehicle-class requirements must be checked under the rental company’s rules and local law.

Live Demo: US Driver License PDF417 Scanner

No registration required. Upload a file to test the extraction.

1
Upload
2
Results
↑

Drop files here or click to browse

JPG · PNG · WebP  ·  up to 500 files · max 4.5 MB each

Photograph the barcode on the back, not the whole card. Let it fill the frame and tap on it to focus.

No document handy?

No files selected
Need more testing? Create a free account to get 200 free credits (equals 100 Driver License scans).

Workflow Applications

RV rental contracts

Pre-fill document_number, date_of_expiry, document_kind, vehicle_class and require confirmation before committing the record.

Boat and marina rentals

Return explicit retake instructions when the barcode is cropped, blurred, or affected by glare.

Additional driver records

Keep the data-capture result separate from approval, eligibility, fraud, and compliance decisions.

Technical Specs

  • Endpoint: POST https://api.structocr.com/v1/driver-license-pdf417
  • Inputs: JPG, PNG, or WebP; Base64 JSON or multipart upload; maximum 4.5 MB
  • Documents: US driver licenses and state ID cards with an AAMVA PDF417 barcode; document_kind identifies which
  • Errors: Explicit PDF417_NOT_DECODED and AAMVA_NOT_VALID responses, with an optional capture_issue hint, support retake and review flows
  • Cost: 2 credits for a successful decode; processing failures are refunded
  • Decision boundary: The API extracts data and does not make identity, authenticity, eligibility, or legal-compliance decisions

Key Features

  • Server-side credentials: Keep the StructOCR API key out of browsers, kiosks, and mobile application bundles.
  • Data minimization: Persist only the fields the documented workflow actually requires.
  • User confirmation: Present extracted fields for correction before they enter a system of record.
  • Recoverable capture: Ask for a clearer image instead of guessing from a failed barcode.
  • Independent decisioning: Boating-safety certificates and vehicle-class requirements must be checked under the rental company’s rules and local law.

Server-Side PDF417 Integration

Send the complete card-back image from a protected backend. This example selects fields relevant to RV and boat rentals and treats HTTP 422 as a retake or review state.

PYTHON EXAMPLE
import base64
import os
import requests

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

response = requests.post(
    "https://api.structocr.com/v1/driver-license-pdf417",
    headers={"x-api-key": os.environ["STRUCTOCR_API_KEY"]},
    json={"img": image},
    timeout=30,
)

if response.status_code == 422:
    body = response.json()
    print("Retake or review:", body.get("error"), body.get("capture_issue"))
else:
    response.raise_for_status()
    data = response.json()["data"]
    print("document_number:", data.get("document_number"))
    print("date_of_expiry:", data.get("date_of_expiry"))
    print("document_kind:", data.get("document_kind"))
    print("vehicle_class:", data.get("vehicle_class"))

Illustrative AAMVA Data

This wholly fictional response demonstrates the API shape for product design and testing. It is not a real person’s credential data.

{
  "success": true,
  "data": {
    "type": "drivers_license",
    "document_kind": "driver_license",
    "source": "pdf417",
    "country_code": "USA",
    "region": "CA",
    "document_number": "SAMPLE1234",
    "surname": "SAMPLE",
    "given_names": "ALEX MORGAN",
    "first_name": "ALEX",
    "middle_name": "MORGAN",
    "sex": "X",
    "date_of_birth": "1990-01-15",
    "date_of_issue": "2025-01-15",
    "date_of_expiry": "2030-01-15",
    "address": "100 EXAMPLE AVE",
    "city": "SAMPLE CITY",
    "postal_code": "00000",
    "vehicle_class": "C",
    "restrictions": null,
    "endorsements": null,
    "document_discriminator": "SAMPLE-DISCRIMINATOR",
    "issuer_identification_number": null,
    "aamva_version": 10,
    "jurisdiction_version": 0
  }
}

Frequently Asked Questions

Which fields are useful for RV and boat rentals?

Common fields include document_number, date_of_expiry, document_kind, vehicle_class. Optional values can be null when they are not encoded in the submitted record.

Can customers use a state ID card instead of a driver license?

The API reads both, but this workflow needs a driver license, so reject records where document_kind is id_card.

Does a successful PDF417 response verify identity or document authenticity?

No. Boating-safety certificates and vehicle-class requirements must be checked under the rental company’s rules and local law.

Explore More Driver License OCR Solutions

SOLUTION

Brazilian CNH OCR API

Extract CPF, RG, and identity fields from Brazilian Carteira Nacional de Habilitação (CNH) instantly. High-accuracy OCR API deployed on edge networks for fast LatAm eKYC.

Driver License OCR
SOLUTION

Cannabis Dispensary ID Scanning with a PDF417 API

Scan US driver licenses and state ID cards for cannabis dispensaries. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

Car Rental Driver License PDF417 Data Capture

Use PDF417 and AAMVA parsing for vehicle rental check-in. Pre-fill document_number, date_of_expiry, vehicle_class, handle unreadable barcodes, and keep API credentials server-side.

Driver License OCR
SOLUTION

Casino Entry and Player Registration with ID Barcodes

Scan US driver licenses and state ID cards for casino entry and player registration. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

Check Cashing and Money Transfer ID Capture with PDF417

Scan US driver licenses and state ID cards for check cashing and money transfer. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

Consumer Loan Application Prefill from ID Barcodes

Scan US driver licenses and state ID cards for consumer lending. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

Coworking Space Member and Guest ID Registration

Scan US driver licenses and state ID cards for coworking spaces. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

CPF Extraction from Driver License API

Accurately extract the CPF (Tax ID) and RG from Brazilian driver licenses (CNH). Try our free image upload tool and integrate our fast, edge-routed OCR API.

Driver License OCR
SOLUTION

Crypto ATM and Kiosk ID Capture with a PDF417 API

Scan US driver licenses and state ID cards for crypto ATMs and kiosks. Pre-fill AAMVA fields from the PDF417 barcode and route unreadable cards to a retake.

Driver License OCR
SOLUTION

Delivery Driver Onboarding with a License Barcode API

Use PDF417 and AAMVA parsing for delivery platforms. Pre-fill given_names, surname, date_of_expiry, handle unreadable barcodes, and keep API credentials server-side.

Driver License OCR

Technical Comparisons & Integrations

Explore platform integrations and competitive analysis

Integration

Add Driver's License OCR to Your Bolt.new App in 5 Minutes

Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Bolt.new app. Build car rental and mobility onboarding flows right in your browser.

Driver License
Integration

Add Driver's License OCR using Cursor in 5 Minutes

Step-by-step guide to integrating the StructOCR Driver's License scanner API using the Cursor AI code editor. Build car rental and mobility onboarding flows rapidly.

Driver License
Integration

Add Driver's License OCR to Your Lovable.dev App in 5 Minutes

Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Lovable.dev app. Build car rental and mobility onboarding flows with zero backend.

Driver License
Integration

Add Driver's License OCR to Your Replit App in 5 Minutes

Step-by-step guide to integrating the StructOCR Driver's License scanner API into a Replit application. Build car rental and mobility onboarding flows using Replit Agent and Secrets.

Driver License
Integration

Add Driver's License OCR to Your v0 App in 5 Minutes

Step-by-step guide to integrating the StructOCR Driver's License scanner API into a v0 by Vercel app. Build car rental and mobility onboarding flows with zero backend.

Driver License
Comparison

VIN Barcode Scanner vs. VIN OCR API: Which is Better for Mobile Apps?

Deciding between local VIN barcode scanners and cloud-based VIN OCR API for your mobile app? Learn why OCR is the required fallback for damaged or chassis-stamped VINs.

Comparison

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