Skip to content

How it works

From uploaded document to structured business fields.

exdata gives teams one document API, then wraps extraction with deterministic parsers, e-invoice handling, AI interpretation, previews, run metadata, and account controls.

Inputs and outputs

One model for the documents teams already receive.

Inputs

Business documents in real intake formats

PDFs, scans, images, emails, HTML, text, XML, Word files, EDI-style payloads, and e-invoice documents can move through the same ingestion surface.

Extraction

Deterministic parsers with AI interpretation

exdata combines deterministic extraction, machine-readable invoice data, and AI interpretation to return structured fields with useful operational context.

Output

Normalized fields shaped for systems

Responses use predictable field names, dot-decimal amounts, ISO currency and country codes, tax breakdown rows, account parties, and payment details.

Extraction surface

The parser is only one part of the product.

Production extraction needs observable states, repeatable retries, review context, and versioned behavior. exdata exposes those pieces instead of hiding them behind a single black-box response.

queued

Async document lifecycle

Queued, processing, completed, error, and blocked states separate upload acceptance from extraction completion.

preview

Source context for review

Previews and thumbnails help operations or support inspect the original document when a result needs review.

versions

Traceable extraction runs

Schema, extractor, AI prompt, and normalization versions make behavior easier to debug and compare over time.

workspace

Account-level controls

Tokens, documents, usage, billing, team roles, webhooks, and settings live under account-scoped workspaces.

Field coverage

Built around finance and operations fields.

The standard field set is shown here, including nested tax breakdown values. Custom extraction fields can add account-specific keys when a workflow needs them.

Document

type title date document_number customer_id contract_id order_id reference_id cost_center note

Dates and periods

issue_date payment_due_date period_start period_end

Amounts and tax

currency net_amount gross_amount opening_balance closing_balance tax_amount tax_rate tax_breakdowns tax_breakdowns[].taxable_amount tax_breakdowns[].tax_amount tax_breakdowns[].tax_rate tax_breakdowns[].taxability tax_breakdowns[].tax_collection_mechanism tax_breakdowns[].tax_exemption_reason tax_system taxability tax_collection_mechanism tax_exemption_reason cross_border_tax_treatment supply_type

Payment

payment_reference payment_status account_holder iban bic bank

Sender

sender_name sender_street sender_zip sender_city sender_state sender_country_code sender_tax_id sender_vat_number

Recipient

recipient_name recipient_street recipient_zip recipient_city recipient_state recipient_country_code recipient_tax_id recipient_vat_number

Contact and company

email phone_number website company_register_id

Email and message

from from_email to to_email subject message_id in_reply_to

Next

See how the API behaves from upload to webhook delivery.