v1.5 — open for early access

Every document is a database waiting to be unlocked.

Tell DoXroute what fields matter to you. Drop invoices, customs forms, or scanned receipts. Receive clean, typed JSON — same shape, every time, any language.

Try it now → Explore the API

Free tier · no credit card · deploy on your own servers if you want

complete run_08472
Your schema
Invoice numberstring
Vendorstring
Due datedate
Line itemsarray
Totalnumber
Source document
Commercial Invoice
Apex Industrial Ltd.
INVOICE
No.INV-2024-1592
Date2024-03-15
Due2024-04-15
Total€12,340.00
Structured output
{ "invoiceNumber": "INV-2024-1592", "vendor": "Apex Industrial", "dueDate": "2024-04-15", "lineItems": [ {"item": "Bearings", "total": 8200}, {"item": "Seals", "total": 4140} ], "total": 12340.00 }
📄Any doc
DoXroute
{ }Clean JSON
What it does
One platform, six hard problems solved.

Classification, extraction, splitting, review — the full pipeline runs without writing a single rule.

Schema from a sentence

Write "I need vendor, date, line items and total from my invoices." DoXroute builds the full extraction template for you.

Trade-ready templates

Invoices, packing lists, bills of lading, purchase orders, customs declarations — seven schemas tuned for international trade.

Automatic routing

Don't know what the document is? Neither did we. The classifier reads the first page and picks the right schema before extraction starts.

Drop a stack

Select up to 50 files, hit upload. A progress bar tracks each one. Download all results when the batch finishes.

Mixed PDFs, sorted

Got a 40-page PDF with three invoices and a packing list glued together? DoXroute splits it at the seams and processes each part alone.

Check the source

Click any extracted value to see where it came from in the original document. Bounding boxes overlay the PDF page.

For developers
curl, POST, done.

One API key authenticates everything. Fourteen endpoints cover extraction, batching, splitting, schema management and job polling. Async workers keep the queue moving.

POST/api/v1/extract
# Extract structured data from a document
curl -X POST https://doxroute.xdinamic.com/api/v1/extract \
  -H "X-API-Key: YOUR_KEY" \
  -F "file=@invoice.pdf" \
  -F "doc_type=invoice"

# Poll for results
curl https://doxroute.xdinamic.com/api/v1/jobs/{job_id} \
  -H "X-API-Key: YOUR_KEY"

One file or fifty

The same endpoint handles a single invoice or a morning's worth of customs paperwork. Batch mode tracks each file independently.

Schemas you build once

Send a plain-text description to /extractors, get back a reusable schema ID. Use it on every future upload without re-describing.

Two brains, one fallback

Extraction runs on Anthropic. If that's unreachable, the request silently reroutes through OpenRouter. You never see the switch.

Runs on your iron

The cloud API and the self-hosted Docker stack share the same codebase. Migrate without changing a single integration line.

Side by side
What you get that the others don't ship.
FeatureDoXrouteDocuPipeTextractGPT-4
Structured extraction
Custom schema (NL)
Batch upload
Document splitting
Visual review + bbox
Equations → LaTeX
Native Office files
Self-hosted / on-prem
Open pricing
Plans
Fifty free documents a month. Scale from there.

Starter

Free
50 documents / month
  • All built-in schemas
  • Custom extractors
  • REST API
  • Visual review
Get started
Popular

Pro

€99/mo
2,000 documents / month
  • Everything in Starter
  • Batch upload (50 files)
  • Document splitting
  • Priority queue
  • Email support
Start free trial

Enterprise

Custom
Unlimited · self-hosted
  • Everything in Pro
  • Docker deployment
  • Your own LLM keys
  • SLA & dedicated support
Contact sales

Your servers. Your rules.

One docker compose up and the entire platform runs inside your firewall. No data crosses the wire unless you want it to.

Contact sales →
Docker Compose Air-gapped Your LLM keys PostgreSQL + Redis No data leaves

Your next invoice is already waiting.

Upload it, pick a schema, get JSON back. The whole loop takes less time than reading this sentence twice.