Step 1
Choose the document source
Start with file upload, a URL, or an API request from the queue you actually care about.
LeapOCR turns PDFs, scans, photos, and multilingual paperwork into markdown for review or JSON that already fits your downstream schema.
Start with 100 trial creditsDocument types teams already handle in one OCR flow
LeapOCR keeps document intake simple, then shapes and validates the result before it lands in finance, logistics, compliance, or internal ops tools.
The goal is not raw text. It is output a person can review or a system can accept without another cleanup layer.
See digitizationIngest mixed documents through one lane
Upload PDFs, scans, photos, and batches without sorting the queue by template before OCR even starts.
Shape the output before it breaks downstream
Send markdown to reviewers or schema-fit JSON to systems, with exceptions surfaced explicitly instead of hidden in the payload.
LeapOCR is built for receipts, invoices, IDs, forms, and multilingual paperwork that still need to pass downstream checks after extraction.
When capture quality, layout, and language vary, the output still has to be dependable enough for the next workflow step.
Read docsStable enough for production document programs
Use one OCR stack across invoices, forms, IDs, and archive imports while keeping the output contract stable where it matters.
Useful across multilingual and cross-border paperwork
Keep labels, totals, and document structure coherent even when the page language or layout shifts across vendors and regions.
The same OCR flow, shown through four real integration surfaces. Switch languages at the top and inspect the exact request shape you would wire into production.
One API surface, four client shapes. Pick the one that fits your stack and hand off a completed record.
Submit work once, poll or wait, then hand off a completed record.
Return structured data without inventing another translation layer.
Use the official client where it helps, or stay close to the API.
import { LeapOCR } from "leapocr";const client = new LeapOCR({ apiKey: process.env.LEAPOCR_API_KEY,});const job = await client.ocr.processURL("https://example.com/document.pdf", { format: "structured", model: "standard-v2", schema: { invoice_number: "string", invoice_total: "number", },});const result = await client.ocr.waitUntilDone(job.jobId);console.log(result.data);Initialize the client and keep auth in one obvious place.
Submit the page URL with model, format, and schema choices.
Wait for completion and hand the result to the next system.
LeapOCR handles 100+ file formats, multilingual documents, webhook delivery, and rollout support for production teams.
Compare modelsCoverage
Formats and language support
PDFs, images, spreadsheets, office docs, scans, and mixed uploads in one queue.
Multilingual invoices, forms, IDs, and logistics documents without separate routing.
Take the formats and languages already in the queue
Process PDFs, scans, photos, office docs, and multilingual paperwork without pre-cleaning everything upstream.
Deliver results into your stack with real support
Return results by API or webhook, then work with the LeapOCR team on edge cases, rollout details, and production tuning.
Set up a document workflow without turning OCR into another cleanup project.
Upload
Send a file or URL, choose output settings, and run OCR
LeapOCR fetches the remote file and processes it the same way as a direct upload.
{ "invoice_number": "string", "invoice_date": "date", "total": "number"}Request
URL upload with model, format, instructions, and schema ready
Step 1
Start with file upload, a URL, or an API request from the queue you actually care about.
Step 2
Return markdown or structured JSON, then add instructions or bbox only where the downstream workflow benefits from them.
Step 3
Escalate difficult pages to pro-v2 or explicit review instead of quietly posting a record your team cannot trust.
Start with file upload, a URL, or an API request from the queue you actually care about.
Return markdown or structured JSON, then add instructions or bbox only where the downstream workflow benefits from them.
Escalate difficult pages to pro-v2 or explicit review instead of quietly posting a record your team cannot trust.
Choose the subscription that fits your ongoing document volume. Monthly plans and Lite on yearly billing include 100 trial credits once you add a payment method. For one-time volume or enterprise pricing, see the full pricing page.
Introductory trial
100 trial credits
Included with monthly plans and Lite on yearly billing once you add a payment method. Visit the full pricing page for top-up packs and enterprise pricing.
View full pricingLite
A low-commitment annual tier for teams that have moved past evaluation and need a clean paid starting point.
Billed annually at $99 / year
15,000 credits / year
Starter
The first recurring tier for production pipelines that need a stable monthly credit budget and room to grow.
Billed annually at $539 / year
90,000 credits / year
Annual billing includes one month at no additional cost
Growth
A balanced recurring tier for document-heavy apps and operations teams that need more room without jumping to enterprise-style volume.
Billed annually at $1,639 / year
270,000 credits / year
Annual billing includes one month at no additional cost
Scale
Built for heavier throughput, cleaner annual budgeting, and teams that want a recurring pool sized for serious document automation.
Billed annually at $4,389 / year
720,000 credits / year
Annual billing includes one month at no additional cost
Need more than recurring credits?
Keep the homepage focused on subscriptions. Use the full pricing page for burst packs, surcharge details, and sales-led enterprise conversations.
Short answers to the questions teams ask before they put OCR into a production workflow.
Available after you add a credit card on a monthly plan or Lite yearly. Start with a page that matters and see whether the right handoff is markdown, schema-fit JSON, bbox, or custom instructions before you change the rest of the workflow.