FlowRunner
PricingContact
Theme
Start Free

Turn receipt and invoice images, PDFs, or raw text into structured JSON with the WiseOCR API, with confidence returned on every extraction. Agents post the confident results and route the rest to a person.

3 actions API key available
WiseOCR website ↗ Platform Documentation ↗ Capability data verified 2026-08-01
A supplier receipt arrives as an attachment in the finance mailbox in [Gmail](/integrations/gmail-service)
Agent calls Extract From File with the attachment bytes and line items left on
Agent reads vendor, document number, tax number, purchase timestamp, currency, country, tax breakdown, totals and items
Agent sums the line items and the tax breakdown and compares both against the stated total
Agent confirms the currency and country actually came off the document rather than being assumed
Agent writes the reconciled record into [Google Sheets](/integrations/google-sheets) and the bill into [Xero](/integrations/xero)
Any receipt whose tax breakdown does not reconcile, or whose currency is ambiguous, goes to the controller

What This Integration Enables

WiseOCR has three operations and that is a position, not a gap. It has decided there is exactly one useful thing to do with a receipt or an invoice, and the only real question is where the document currently lives. Extract From File takes bytes you already hold, Extract From URL lets WiseOCR fetch a publicly reachable document itself, and Extract From Text works on content that has already been transcribed, by a point-of-sale export, an email body, or an earlier OCR step. All three return the same JSON: vendor, document number, tax number, purchase timestamp, currency, country, a tax breakdown, totals and an itemised line-item list.

The tax breakdown is the field that earns this connector its place. Most receipt readers give you a total and a merchant and treat tax as one more number. WiseOCR returns tax as a breakdown, per rate, alongside the country and currency it read, which is what a VAT return actually requires and what makes a receipt checkable rather than merely recorded. That gives an agent something better than a confidence score: it gives it arithmetic. A total, a set of line items and a tax breakdown either reconcile or they do not, and a flow that checks before it posts catches a class of error no amount of model confidence would have flagged. This is Orchestration as a Service doing the unglamorous part: the agent does the reading and the sums, and the person hears about it only when the sums disagree.

Without FlowRunner

Receipts are retyped Somebody keys vendor, date, tax and total off a photograph into a spreadsheet
Tax is taken on trust The tax figure is copied as printed and nobody checks it against the total
Foreign currency slips through A receipt from a trip abroad is booked in the wrong currency and found at reconciliation

With FlowRunner

Three inputs, one shape A file, a URL or already-transcribed text all return the same structured record
Arithmetic is checked before posting Line items and tax breakdown are summed against the total as a matter of course
Currency ambiguity stops the line A receipt whose currency was inferred rather than printed waits for a person

Use Case Scenarios

Expense receipts from an inbox to a ledger

Receipts arrive as attachments in the finance mailbox. The agent pulls each attachment from Gmail and calls Extract From File, which uploads the bytes directly and needs nothing published to a public URL. The structured record comes back with the vendor, purchase timestamp, currency, country, tax breakdown, totals and the items. The agent sums the items and the tax lines, compares them against the stated total, and where everything agrees writes the expense row into Google Sheets and the bill into Xero. Line items are left on deliberately, because Skip Line Items is faster but removes the only thing that makes the arithmetic checkable.

Supplier invoices matched against open purchase orders

Supplier PDFs are already hosted where WiseOCR can reach them, so the agent uses Extract From URL and lets WiseOCR fetch them rather than moving the bytes twice. The returned line items are matched against the open purchase order held in Airtable, quantity by quantity and price by price. Where the invoice matches the order, the bill is approved for the payment run. Where it does not, the specific rows that differ are the message, so procurement sees what changed rather than a note saying the invoice failed matching.

Receipt text that never was an image

A point-of-sale system exports the day's receipts as text, and a support ticket in Zendesk carries a receipt a customer typed out rather than photographed. Neither needs image processing, so the agent uses Extract From Text, which is the fastest of the three because there is no image step at all and it consumes a single credit per successful extraction rather than one per page. The same JSON comes back, so the downstream mapping written for photographed receipts works unchanged on transcribed ones.

Human-in-Loop Highlight

The most expensive receipt errors are not the illegible ones. They are the ones that parse cleanly into a plausible number. A tax breakdown that does not sum to the difference between the net and the total means one of three figures was misread, and there is no way from the extraction alone to know which. A receipt collected abroad with no printed currency symbol yields a currency and a country that were inferred from context rather than read off the page, and a total booked in the wrong currency is an error that survives every downstream check until somebody reconciles a bank statement weeks later. A period read as a thousands separator turns a small purchase into a large one, or the reverse, and either way the number looks entirely ordinary sitting in a ledger row.

So the agent does the sums explicitly and gates on the disagreement. It totals the line items, totals the tax breakdown, and compares both against the stated total. Where they do not reconcile, or where the currency was not printed on the document, it stops and sends the controller the specific contradiction with the receipt image beside it: "This receipt from Café Ristretto reads a total of 41,50 with tax lines summing to 3,20 at 21 percent, which does not reconcile, and no currency symbol appears on the document. WiseOCR returned EUR. Confirm the currency and the total, or should I hold this for manual entry?" The controller answers in one message and the record posts correct, or does not post at all. Note the trap this closes: a flow that turned on Skip Line Items for speed cannot run this check, because it never received the items to sum. The speed was real and so was the cost, and that trade belongs to whoever configured the flow rather than to a reconciliation three weeks later.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

3 actions

Extraction

3
  • Extract From File Extracts structured data from a receipt or invoice supplied as a FlowRunner file. The image or PDF is uploaded to WiseOCR and returned as JSON containing the vendor, document number, tax number, purchase timestamp, currency, country, tax breakdown, totals and an optional line-item list. Accepts any image type plus PDF, with image dimensions required between fifty and sixteen thousand pixels on both axes. Consumes one credit per image or PDF page.
  • Extract From URL Extracts structured data from a receipt or invoice hosted at a publicly reachable URL, with WiseOCR fetching the file itself so nothing has to be uploaded from the flow. Returns the same JSON shape as the file operation. The right choice whenever the document already lives somewhere reachable, because it avoids moving the bytes twice.
  • Extract From Text Extracts structured data from receipt or invoice text that has already been transcribed, whether by a point-of-sale export, an email body or an earlier OCR step. No image processing is involved, which makes it the fastest of the three, and it consumes one credit per successful extraction rather than one per page. Returns the same JSON shape, so downstream mapping written for images works unchanged.

Frequently Asked Questions

What can FlowRunner do with WiseOCR?

FlowRunner agents can run Extract From File, Extract From URL, and Extract From Text in WiseOCR.

Does connecting WiseOCR to FlowRunner require OAuth?

No. WiseOCR connects to FlowRunner with an API key, no OAuth flow required.

Can WiseOCR trigger a FlowRunner workflow automatically?

WiseOCR doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with WiseOCR

$100 in credits. No card required. Connect in minutes.