Reference · Tools

Mindee

Extract structured data from receipts and invoices using Mindee OCR/AI API.

Action (binary) Utility v1 Binary data

The Mindee node turns a receipt or invoice image or PDF into structured JSON, extracting the fields you would otherwise key in by hand. A typical build is processing emailed receipts into an expense system with the totals, dates and vendor already parsed.

Node type
Action (binary)
Parameters
6
Outputs
Output, Error
Credentials
Mindee Receipt API , Mindee Invoice API

Mindee

Extract structured data from receipts and invoices via Mindee OCR

Overview

The Mindee tool uploads binary document files (images or PDFs) to the Mindee prediction API and returns structured JSON data extracted via OCR and AI. It supports two resources: Receipt — upload a receipt image/PDF and extract date, supplier, amounts, currency, taxes, category, and other financial fields; and Invoice — upload an invoice image/PDF and extract invoice number, dates, supplier/customer info, line items, amounts, taxes, and payment details. Both resources support API versions 1 (legacy), 3, and 4 (recommended). The tool can return cleaned/flattened data or the full raw API response. Mindee uses separate API keys for receipt and invoice endpoints. The binary document is sent as multipart form data, and no new binary data is produced — only JSON extraction results.

Category: Utility
Tool Name: mindee
Version: 1

Appearance: Icon: lucide-ScanLine | Color: #6236FF

Node Type

Action (Binary) — handles file/binary data operations

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Mindee Receipt API or Mindee Invoice API credentials — Mindee issues a separate key per product, and the node uses the one matching the Resource you select. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Invoiceinvoice
Receiptreceipt

Operations

OperationValueDescription
PredictpredictUpload a document and extract structured data

Parameters

ParameterTypeRequiredDefaultDescription
API VersionoptionsNo4Which Mindee API version to use. Version 4 is recommended.
Options: 1 (Mindee API v1 — deprecated), 3 (Mindee API v3), 4 (Mindee API v4 — latest)
Input Binary FieldstringYesdataName of the binary property containing the document file (image or PDF) to upload. Names are case-sensitive — see the upstream node’s Binary Data panel for the exact names to use. (shown when Operation is predict)
RAW DatabooleanNofalseWhether to return the full API response as-is (true) or cleaned/flattened extraction results (false).
Max ConcurrencynumberNo5Maximum number of items to process concurrently. Keep low to respect Mindee rate limits.

Parameter values on this node are used exactly as typed — {{ … }} expressions are not evaluated here, so set the binary field name to a literal value rather than to an expression.

Output Data

One output item per input item. The extraction result is merged into the item JSON at the top level, so the incoming fields stay addressable alongside it. The uploaded document is forwarded unchanged as binary on the output item — and on error items too, so a retry branch still has the file. The node never creates new binary data.

What lands on the item depends on RAW Data.

RAW Data off (the default) — cleaned and flattened

Mindee returns every field as an object with a value, a confidence and page coordinates. With RAW Data off, the node flattens that: each prediction field becomes a single plain property whose value is the field’s extracted value, so {{ $json.total_amount }} reads a number or string rather than an object.

On API versions 3 and 4 the item also carries three document-level properties before the fields:

{
  "id": "b3f9c1d2-4e5a-4c7b-9f10-2a6d8e0b1c34",
  "name": "receipt-2026-03-14.jpg",
  "number_of_pages": 1
}
  • id — Mindee’s document identifier for this prediction.
  • name — the file name Mindee recorded for the upload.
  • number_of_pages — how many pages the document had.

The remaining properties are the prediction fields themselves, named exactly as Mindee names them for the product you called, with four flattening rules applied:

FieldBecomes
taxesAn object { amount, rate } taken from the first tax line only. Documents with several tax rates lose all but the first.
localeTwo separate properties: currency (the currency code) and locale (the locale value). The original nested object is not kept.
line_items (invoices, v3/v4)An array of objects, each trimmed to description, product_code, quantity, tax_amount, tax_rate, total_amount and unit_price.
Any other object fieldIts single meaningful value — the field’s value, or failing that its name, raw, degrees, amount or iban.

Scalar fields and plain arrays pass through unchanged.

On API version 1 the same flattening applies to the first prediction in the response, but there are no id, name or number_of_pages properties and no line_items handling.

RAW Data on — the full response

The whole Mindee response is merged instead, untouched. That gives you document (with the nested inference and its prediction objects, each carrying its confidence and bounding polygon) on versions 3 and 4, predictions on version 1, and the api_request envelope describing the call. Turn this on when you need confidence scores or positional data; leave it off when you just want the values.

Usage Examples

  • Extract date, supplier, and total from a receipt photo
  • Parse an invoice PDF to get line items and amounts
  • Process expense receipt images in bulk and return structured data
  • Extract invoice number, due date, and supplier details from a scanned invoice

Example Configuration

Read a receipt photo attached to the item and return flattened fields:

{
  "type": "mindee",
  "parameters": {
    "resource": "receipt",
    "operation": "predict",
    "binaryPropertyName": "data",
    "apiVersion": 4,
    "rawData": false
  }
}

Parse an invoice PDF, keeping the full response with confidences:

{
  "type": "mindee",
  "parameters": {
    "resource": "invoice",
    "operation": "predict",
    "binaryPropertyName": "data",
    "apiVersion": 4,
    "rawData": true,
    "maxConcurrency": 2
  }
}

Process a large batch of receipts one at a time to stay under the rate limit:

{
  "type": "mindee",
  "parameters": {
    "resource": "receipt",
    "operation": "predict",
    "binaryPropertyName": "data",
    "apiVersion": 4,
    "rawData": false,
    "maxConcurrency": 1
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Upload receipt or invoice images/PDFs to Mindee OCR API and receive structured extracted data as JSON.

Important notes

  • Receipts and invoices need different keys. Mindee issues one API key per product, and the node picks the credential from the Resource you select — a receipt key will not authenticate an invoice run.
  • The document must arrive as binary data. Put a Download, Read File or S3 node in front, and make sure the binary property name matches exactly; names are case-sensitive.
  • Version 4 is the one to use. Version 1 is deprecated and reaches a different endpoint with a different auth header; version 3 is supported for older integrations. Only 1, 3 and 4 are accepted.
  • Turn RAW Data on for confidence scores. The cleaned output deliberately drops confidences and coordinates in exchange for flat, directly usable values.
  • Multi-rate tax documents lose detail when cleaned. Only the first tax line survives the flattening — use RAW Data if a document can carry more than one rate.
  • Keep Max Concurrency low. Mindee rate-limits per key; 1 or 2 is sensible for high-volume batches.

Frequently asked questions

Why is my invoice run failing authentication?

Mindee issues one API key per product, and the node picks the credential from the Resource you select — a receipt key will not authenticate an invoice run. Configure both credentials if you process both document types.

How does the document reach the node?

As binary data, so put a Download, Read File or S3 node in front of it. The binary property name must match exactly, and names are case-sensitive.

What comes back?

The structured extracted data as JSON — the parsed fields rather than raw OCR text, which is what makes it usable directly by the next node.

Can it handle PDFs as well as images?

Yes, both image and PDF documents are supported.

Build with the Mindee node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Mindee Receipt API credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.