User Guide

Turn invoices, receipts, contracts, CVs and other business documents into clean, reviewable, export-ready data, with the source text shown behind every value.

This guide covers using DocAI in the browser. Calling DocAI from code? See the API documentation.

What DocAI does

You upload a document, process it through the API, or route an email attachment into DocAI. DocAI reads it, figures out what kind of document it is, and pulls out the fields that matter: invoice number, totals, line items, names, dates, and so on. Every value is:

Supported uploads: PDF, PNG, JPG/JPEG, HEIC/HEIF, AVIF, TIFF, BMP, WEBP. Multi-page PDFs are supported; the AI reads up to the first 3 pages for field extraction.

How a document is processed

  1. 1

    Receive or upload

    Drag a file in, use the API, or send an attachment through a configured email provider.

  2. 2

    Read (OCR)

    The page is scanned into text and the position of every word, so values can be mapped back to the page.

  3. 3

    Classify

    DocAI detects the document type (and region) with a confidence score. You can override either if you know better.

  4. 4

    Extract

    The AI fills in the fields for that type. If the AI is unavailable, DocAI falls back to pattern-matching so you still get a result.

  5. 5

    Review, approve & export

    Check highlighted values, correct anything, complete review, and approve controlled accounting handoffs.

Trust: confidence & evidence

DocAI never asks you to take a value on faith.

Evidence. Click any field and the snippet it was read from is highlighted on the page. The annotated-PDF download shows the same boxes.

Confidence colours. Field values and their boxes are colour-coded so your eye goes straight to what needs checking:

Faint grey boxes on the preview mark all text DocAI recognised, so you can confirm nothing was missed, not just the fields it matched.

Needs review. When key fields are missing or low-confidence, the result is flagged Needs review rather than silently passed. Completeness checks run automatically for invoices and CVs.

Supported document types

DocAI auto-detects the type, or you can pick one before analysing. Typed documents have a fixed, well-known field set: key fields are always present in the result (shown empty if not found). General documents don't have a fixed shape, so DocAI returns whatever labelled fields it finds.

Document typeFamilyBest for
InvoiceTypedSales/purchase invoices, bills, VAT/GST invoices
Purchase orderTypedPOs, order confirmations
Delivery note / packing slipTypedGoods-received notes, shipping dockets
ReceiptTypedTill receipts, fuel & restaurant receipts
CV / rΓ©sumΓ©TypedCandidate CVs and rΓ©sumΓ©s
Structured formGeneralApplication forms, questionnaires
ContractGeneralAgreements, terms
Identity documentGeneralID cards, passports, licences
Bank statementGeneralAccount statements
Other / unknownGeneralAnything else

Legend below: Key field (always extracted) and Also captured (when present).

Page limit. DocAI renders the first 5 pages of a PDF and sends the first 3 to the AI model. That covers the transactional documents above end to end. For a long contract or a full bank statement, only those first pages are read. Split the file, or re-analyze the saved document, which reads up to 20 pages.
Invoice: field details

Full financial extraction with a line-item table and automatic totals checks.

Key fields: invoice number, issue date, seller name, buyer name, total amount, VAT/tax amount, line items

Also captured: due date, subtotal, currency, payment method, seller & buyer tax numbers, seller & buyer addresses, per-line VAT rate

Line items table: description, quantity, unit, unit price, net amount, VAT rate, VAT amount, gross amount

Regional variants add VAT/GST/sales-tax details. See Regional variants.

Purchase order: field details

Key fields: PO number, order date, seller name, buyer name, total amount, line items

Also captured: delivery date, delivery address, currency, payment method

Delivery note / packing slip: field details

Quantity-focused: no totals or VAT (prices are usually absent on delivery documents). Packing slip is handled identically to delivery note.

Key fields: delivery-note number, delivery date, seller name, buyer name, line items

Also captured: related order number, delivery address

Receipt: field details

Tuned for till receipts, and sub-classified automatically:

Receipt kind: fiscal, non-fiscal, simplified invoice, return/correction

Merchant type: grocery, fuel station, restaurant, retail, pharmacy. Fields adapt accordingly.

Key field: total amount

Also captured: VAT amount, seller/buyer tax number, currency, payment method, line items

Fuel receipts: fuel type, litres, price per litre, pump number

Restaurant receipts: table number, waiter, service charge, tip

CV / rΓ©sumΓ©: field details

CV and rΓ©sumΓ© are the same type.

Key fields: full name, email, phone, skills, work experience

Also captured: location, professional summary, education, certifications, languages, LinkedIn, GitHub, total years of experience

Work experience table: role, company, start date, end date, highlights

Education table: institution, degree, field of study, start, end

Other documents: forms, contracts, IDs, statements

For structured forms, contracts, identity documents, bank statements, and anything else, DocAI returns the labelled fields it finds on the page as label β†’ value pairs. There's no fixed schema, so coverage depends on the document, but evidence, confidence, editing, and export all work the same way.

Need a fixed shape for one of these? Create a custom type with exactly the fields you want.

Regional variants

The same document type can carry different details by country/region. DocAI auto-detects the region (from tax IDs, currency, and wording) and adds the relevant fields, or you can select a region yourself before analysing.

Base typeRegionExtra fields added
InvoiceEU (VAT)Company registration number, reverse-charge/exemption note, IBAN, VAT breakdown by rate
InvoiceUS (sales tax)Ship-to address, remit-to address, sales tax, tax-exempt certificate
InvoiceIndia (GST)Place of supply, IRN, GST breakdown (CGST/SGST/IGST/Cess), HSN/SAC per line
Purchase orderUSShip-to address, Incoterms, vendor number
Delivery noteEUCarrier, tracking/waybill number, package count, gross weight, ordered vs. delivered quantity per line

Auto-detection recognises EU, US, and India for the above types and applies the matching regional schema. Choosing a region that has no variant simply uses the base type; it's never an error.

Build your own type (custom templates)

Got a document DocAI doesn't model out of the box (a lab report, an internal form, a specific contract)? In a workspace, create a custom type with exactly the fields you need, then pick it when you analyse.

The single biggest accuracy lever for a custom field is a clear description: it's the hint the AI uses to find the right value. Limits: up to 60 fields per template and 30 columns per table.

Languages

DocAI's interface and extraction work in English, German, French, Spanish, Polish, and Italian. Documents in these languages are read and extracted natively (field labels like Rechnung, Faktura, Facture are understood). Switch the interface language from the language menu; your choice is remembered.

Reviewing & correcting results

Exporting

From any result you can download:

FormatContents
JSONFull structured result, including confidence and evidence
CSV (fields)One row per field
CSV (line items)The line-item table
Excel (XLSX)Fields and tables in a spreadsheet
Annotated PDFThe original with confidence-coloured boxes over each value
Spreadsheet exports are protected against formula-injection: cells that start with =, +, -, or @ are escaped so they're treated as text, not formulas.

Sharing safely

Need to send a result to a colleague, client, or auditor?

Field filtering happens on the server, so a public link can never return data you didn't choose to share.

Processing many files at once

Use Batch upload to drop in many documents at once. They're processed in the background, and you can watch progress and collect results per file when they're done. Each file is validated on upload; anything unsupported or over the size limit is reported back to you individually so the rest still go through.

Email intake & approval automation

DocAI can accept attachments forwarded by Postmark, Mailgun, SendGrid, Amazon SES, Make, n8n, or another adapter. DocAI does not host a mailbox or parse provider-specific email payloads itself: the provider receives the message, filters spam, extracts the attachments, and sends them to DocAI's email-ingestion API.

  1. Create an API key with the extract and history scopes in Developer Settings.
  2. Configure the email provider or automation flow with a stable message ID and a stable provider/account namespace.
  3. Optionally include a workspace so attachments enter that workspace's review and approval queue.
  4. Review uncertain fields, complete the review, and let an authorized approver approve the document.
  5. Use the signed document.approved webhook (not document.completed) to start an accounting write or export.
Provider retries are safe. DocAI returns the existing job for an attachment it has already accepted. A failed ingestion can reuse the same job ID with fresh bytes for up to three total attempts; active or completed jobs are never processed twice.

Webhook delivery is durable and retried automatically. If a durable event cannot be queued after repeated attempts, it appears under Developer Settings β†’ Events needing attention, where you can replay it after fixing the cause.

For multipart fields, response examples, signature verification, and Make/n8n setup, see the API documentation.

Tips for the best results

Pages & allowance

DocAI meters usage in pages: analyzing one page of a document uses one page of your allowance. Every new account starts with 100 free pages, a one-time starter allowance with no expiry. Paid plans add a monthly page allowance that resets on the 1st of each month.

Limits at a glance

ThingLimit
File typesPDF, PNG, JPG/JPEG, HEIC/HEIF, AVIF, TIFF, BMP, WEBP
Pages rasterized per documentUp to 5 pages
Pages read by the AIFirst 3 pages per document (rasterized pages beyond that are available for bounding-box work but not sent to the AI)
Interface & extraction languagesEN, DE, FR, ES, PL, IT
Custom template fields≀ 60 fields, ≀ 30 columns per table
Share-link expiry1–365 days (default 7)

Upload size limits, batch limits, and monthly quotas depend on your plan and the instance configuration.

FAQ

Does it work without the AI?

Yes. If the AI provider is unavailable, DocAI falls back to pattern-matching and flags the result so you know. You'll still get fields to review.

Can I force a document type or region?

Yes. Select them before analysing; otherwise DocAI auto-detects both.

Why are some fields empty?

For typed documents, every key field is always listed. Empty means it wasn't found on the page (it may genuinely be absent). For general documents, only found fields appear.

What happens to my documents?

Saved results are stored per user and kept until you delete them. There is no time-based automatic deletion. You can delete any result, or all of them, at any time. Shared links can be revoked.

Your plan's document and storage limits are the practical ceiling: when you reach one, saving is blocked until you upgrade or delete. Export anything you need to keep for statutory retention to your own system of record. DocAI is not an archive.

Can DocAI receive documents by email?

Yes, through a configured inbound-email provider or automation tool. The provider extracts accepted attachments and sends them to DocAI; DocAI handles validation, duplicate-safe job creation, extraction, review routing, and webhooks.

Where's the developer/API documentation?

See the API reference.