Skip to main content

Invoices

AI invoice data extraction, checked before you pay.

Upload an invoice and get the vendor, dates, line items, taxes and totals as structured data. Every invoice is checked for arithmetic, taxes and duplicates, and anything uncertain waits for your review.

Invoices are included in the free plan: 50 pages a month plus 100 welcome pages, no credit card.

Retyping invoices is slow and error-prone

  • Each invoice is read and typed by hand into a spreadsheet or accounting tool.

  • A wrong total, a missing tax number or a duplicate is only noticed after payment.

  • Invoices arrive as PDFs, phone photos and scans, in different layouts for every vendor.

How it works

  1. Upload

    Drop one invoice, a batch or a ZIP in the app, or send it through the REST API.

  2. Extract

    DocuSense detects the document type and reads every field and line item.

  3. Check and review

    Totals, taxes, dates and duplicates are checked. Uncertain invoices go to the review queue.

  4. Export

    Download JSON or CSV, or send the data to your tools through signed webhooks.

Fields extracted from each invoice

Missing values come back empty instead of being guessed.

Invoice

  • Invoice number
  • Invoice date and due date
  • Currency
  • Payment method and notes

Parties

  • Vendor name, address and tax number
  • Buyer name and address

Amounts

  • Line items: description, quantity, unit price, amount
  • Subtotal
  • Each tax with its rate and amount
  • Total

From a PDF invoice to clean data

What DocuSense returns for a two-line invoice with GST and QST (trimmed for reading).

invoice.pdf
{
  "documentType": "INVOICE",
  "extractedData": {
    "invoiceNumber": "INV-0425",
    "invoiceDate": "2026-09-14",
    "dueDate": "2026-10-14",
    "vendor": {
      "name": "Example Supplies Inc.",
      "taxNumber": "123456789RT0001"
    },
    "buyer": {
      "name": "Sample Company Ltd."
    },
    "lineItems": [
      {
        "description": "Office chairs",
        "quantity": 4,
        "unitPrice": 245,
        "amount": 980
      },
      {
        "description": "Delivery",
        "quantity": 1,
        "unitPrice": 60,
        "amount": 60
      }
    ],
    "subtotal": 1040,
    "taxLines": [
      {
        "name": "GST",
        "rate": 5,
        "amount": 52
      },
      {
        "name": "QST",
        "rate": 9.975,
        "amount": 103.74
      }
    ],
    "total": 1195.74,
    "currency": "CAD"
  },
  "checkStatus": "ok"
}

Formats and limits

What you can send

  • PDF, PNG, JPG and WEBP
  • Word (.docx), Excel (.xlsx) and CSV
  • Up to 10 MB per file; ZIP files in batches

What you get back

  • JSON through the app or the REST API
  • CSV export
  • Signed webhooks to Zapier, Make, n8n, Zoho Flow, Power Automate or your server

Good to know

  • Password-protected files and files with macros are refused.
  • Very blurry or cut-off scans may need a manual check in the review queue.

Your invoices stay under control

  • Your original file is deleted once processed: only the extracted data is kept, and you can delete it at any time.
  • Files are scanned for viruses before processing and kept encrypted while they wait.
  • Two-step sign-in, API keys with limited permissions and signed webhooks.

Frequently asked questions

Which checks are run on each invoice?

Line items must add up to the subtotal and subtotal plus taxes to the total; tax amounts must match their rates; the vendor's GST/QST number must be present and well formed when taxes are charged; the due date must follow the invoice date; and duplicates are flagged.

Can I correct a value before exporting?

Yes. Open the document, fix the field and approve it. Your corrections are kept with the document.

Does it work with photos of paper invoices?

Yes: PNG, JPG and WEBP photos are accepted. A sharp, well-lit photo of the full page gives the best result.

Can I process many invoices at once?

Yes. Upload a batch or a ZIP file: each invoice is detected and extracted separately, within your plan's limits.

Is there an API?

Yes. One REST call with your API key returns the extracted fields as JSON. The developer documentation has samples in 16 programming languages.

Stop retyping invoices.

Create a free account and extract your first invoice in a minute.