Mindket

License plate number read from an uploaded photo

Newversion 1 · updated

Overview

An n8n workflow with a web form that takes a photo and returns the license plate number of the front-most car. A vision model on OpenRouter reads the plate.

License plate number read from an uploaded photo is an n8n workflow in the Productivity category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file and steps
  • Another model: change the model name in Settings to any OpenRouter model that accepts images
  • Another question: change the prompt in Settings, for example to read the text on a label

Platform

Connects 1 app

How it works

Trigger

A web form

It starts when someone submits the form:

  • One JPG or PNG photo
  • A required file field called Image

Actions

  1. The form’s photo is kept next to a model name and a prompt
  2. A chain sends the photo and the prompt to a vision model through OpenRouter
  3. The model is asked for only the characters of the plate on the front-most car
  4. The characters are shown on the form’s result page

Result

A result page that shows the plate characters

Integrations

What you need before you start.

OpenRouter

Vision model

Runs the model that reads the plate.

NeedsAn OpenRouter API key with credit, in an OpenRouter credential

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
4 steps, starting on a form
AI
1 step calls an AI model: Basic LLM Chain
Sign-ins
Signs in to: OpenRouter
API keys
No API key is left in the file
Step types
Mindket’s checker reads all 4 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow reads a license plate from a photo. A web form takes one JPG or PNG. A Set node holds the model name and the prompt. A Basic LLM Chain sends the photo and the prompt to a vision model through OpenRouter. The model returns only the characters of the plate on the front-most car, and a result page shows them. Five nodes do the work.

Who it suits

Developers and small teams who want to see how a vision model reads text in a photo, such as a parking operator testing a plate reader. Skip it for anything that must be right every time. A model can misread a plate, so a person should check the result.

Who uses it, and how
IndustryWho uses itHow they use itExample
ParkingCar park operatorsLog the plates of cars photographed at a gateAn operator uploads a gate photo and notes the plate it returns.
LogisticsYard managersCheck trucks arriving at a depotA manager photographs a truck and compares the answer with the booking list.
InsuranceClaims staffRead the plate from an accident photoA handler uploads a claim photo and copies the plate into the case.
DevelopmentAutomation buildersTry a vision model on a real taskA developer swaps the model name in Settings to compare two models on the same photo.

You need basic n8n skills and an OpenRouter account with some credit.

Where to use it

Any n8n that can reach OpenRouter will run it. The form page needs an address that people can open.

  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file and steps
  • Another model: change the model name in Settings to any OpenRouter model that accepts images
  • Another question: change the prompt in Settings, for example to read the text on a label

Setup

Download saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. One account is involved.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server of your own
OpenRouterAn API key and some credit, saved in an OpenRouter credential
A photoA JPG or PNG with a visible plate
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an OpenRouter credential and select it in OpenRouter LLM.
  3. Check the model name in Settings. The file uses openai/gpt-6-luna.
  4. Open FromTrigger, copy its test address and upload a photo.
  5. Activate the workflow to get the production form address, which FromTrigger shows.

How to use it

Open the form address, choose a JPG or PNG and submit it. The page that comes back shows the plate characters.

What to change for a different result
To changeWhere
The modelThe model value in Settings
What it is asked to readThe prompt value in Settings
The accepted file typesacceptFileTypes in FromTrigger
The result page titlecompletionTitle in FormResultPage

Example

A parking operator uploads a photo of a car at a gate.

The model is told to return only the characters, so the page should show a short string such as the plate number. If no plate is readable, the answer can be empty or wrong.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. A vision model is an AI that can look at a picture and answer questions about it. OpenRouter is one service that gives access to many such models.

For experts. The photo reaches the chain as binary data in the field Image, which the form names after its field label. The Set node keeps binary data, so the chain’s image message can read it. The model name comes from $json.model in OpenRouter LLM.

Where to look closer
NodeWhat it doesWhat to know
FromTriggerA form with one required file field called ImageThe uploaded photo lands in the binary field Image
SettingsAdds the model and prompt fieldsIt keeps the other fields, including the photo
Basic LLM ChainSends the prompt and the photo to the modelIts image message reads the binary field Image
OpenRouter LLMProvides the model chosen in SettingsThe model is read from the field model of each item
FormResultPageShows the answer on the form’s result pageIt shows the chain’s text field

Good to know

The model was replaced. Mindket did not run this workflow.

  • Model: the file used openai/gpt-4o. OpenAI’s deprecations page, read on 12 November 2026, shuts the dated gpt-4o snapshots down on 14 January 2027, with gpt-6-luna as the replacement. Mindket’s copy uses openai/gpt-6-luna, which OpenRouter’s public list, read on the same day, shows with image input at 0.10 US dollars per million input tokens and 0.50 per million output tokens
  • Plain chain: gpt-6-luna calls tools only in the Responses API, or with reasoning effort none on Chat Completions (OpenAI’s model page), and this chain uses no tools
  • Privacy: a license plate can identify a person in many places. Check the rules that apply to you before you process photos of other people’s cars, and keep the form address private
  • Accuracy: a model can misread a plate or a photo with glare. A person should check the result
  • Your data: the photo goes to OpenRouter and the model’s provider. The file holds no credential

README and files

README

License plate number read from an uploaded photo

An n8n workflow with a web form that takes a photo and returns the license plate number of the front-most car. A vision model on OpenRouter reads the plate.

What is inside

  • workflow.json: the workflow as n8n exports it, five nodes. It holds no credential and no sticky notes.
  • README.md: these notes.

What we changed from the original copy

  • The model was openai/gpt-4o. OpenAI’s deprecations page, read on 12 November 2026, shuts the dated gpt-4o snapshots down on 14 January 2027, with gpt-6-luna as the replacement. OpenRouter’s public list still shows openai/gpt-4o without an end date. Mindket’s copy uses openai/gpt-6-luna, which the list shows with image input.
  • The form trigger and the result page carried webhook IDs from the author’s n8n. They are gone, so n8n makes new ones when you import the file.
  • The OpenRouter node was linked to a credential in the author’s n8n. The link is gone, so select your own.
  • Nothing else. The prompt, the form field and the result page are the file’s own.

Before you start

  • An n8n instance, on n8n Cloud or your own server.
  • An OpenRouter API key with some credit.
  • A JPG or PNG photo with a visible license plate.

Set it up

  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add an OpenRouter credential and select it in OpenRouter LLM.
  3. Check the model name in Settings. The file uses openai/gpt-6-luna.
  4. Open FromTrigger, copy its test address and upload a photo.
  5. Activate the workflow to get the production form address, which FromTrigger shows.

How a run goes

  1. FromTrigger shows a form with one required file field called Image, and starts the run when someone submits it.
  2. Settings adds the model name and the prompt to the item and keeps the photo.
  3. Basic LLM Chain sends the prompt and the photo to the model that OpenRouter LLM provides.
  4. FormResultPage shows the model’s answer on the page that comes back.

Change the result

  • The model: The model value in Settings.
  • What it is asked to read: The prompt value in Settings.
  • The accepted file types: acceptFileTypes in FromTrigger.
  • The result page title: completionTitle in FormResultPage.

Good to know

  • Mindket did not run this workflow. OpenRouter was not called, and nobody tried a real photo. The settings come from n8n’s source and OpenRouter’s and OpenAI’s pages, read on 12 November 2026.
  • The form names the uploaded file after its field label, so the photo sits in the binary field Image. The chain’s image message reads that field.
  • OpenAI’s model page says gpt-6-luna calls tools in the Responses API, or on Chat Completions only with reasoning effort none. This chain uses no tools.
  • OpenRouter’s public list shows openai/gpt-6-luna at 0.10 US dollars per million input tokens and 0.50 per million output tokens.
  • A license plate can identify a person in many places. Check the rules that apply to you before you process photos of other people’s cars.
  • A model can misread a plate. A person should check the result.
  • The photo goes to OpenRouter and the model’s provider.
  • The file holds no credential and no key.
Files
NOTICE.md  643 B
README.md  3 KB
workflow.json  4 KB

3 files, 8 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-12

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

anaksor-ocr

Sokheng · Kit

Reads Khmer and English text from documents, receipts and photos of signs, using a detector for text lines and a recogniser for each line. Suits developers who…

New

Qwen2.5-7B-Instruct as GGUF files in eight quantization sizes, to chat with locally through llama.cpp. For people who want a capable 7.6B model on their own co…

New

ACE-Step 1.5 XL SFT

ACE-Step · Kit

Generates music from text with a 4B diffusion decoder, 50 steps and guidance control, aiming for higher audio quality than the base. For creators with a GPU of…

New

Similar in Productivity

See all in Productivity

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Frontend Slides

zarazhangrui · Skill

Builds HTML presentations from scratch or from a PowerPoint file and shows visual style previews to pick from, for people who want web slides with no CSS or Ja…

New32.3k

IPTV

iptv-org · Kit

Collects publicly available live TV channels from many countries into playlists that any video player with live streaming can open. Made for viewers and for de…

New144k