Skip to content

Accounts Payable | Bill Capture & OCR

Bills land. Captured, classified, ready for approval.

Invoices sent over InvoiceNow arrive as structured data and skip OCR entirely. Everything else, email forwards, PDF uploads and vendor portal pushes, lands in the same queue, where OCR reads header fields at 95 to 98% accuracy and line items at 88 to 92%. Vendor matched on UEN. PO and GRN linked. Input tax eligibility resolved per line. The bill reaches the approver already worked, not waiting.

Bill Capture Ocr

How bills enter the books today

Capture is where the AP cycle quietly loses its days.

Bills arrive in a dozen different ways. The vendor email, the accountant forward, the ERP push, the PDF photographed on someone's phone at a site visit. Then the AP team takes over:

  • Header fields are keyed in by hand from a printed copy.
  • Line items typed into the GL one row at a time, GST splits done in a calculator.
  • Vendor master searched by name (which doesn't match the invoice's spelling), then by UEN (which the vendor sometimes types wrong).
  • PO and GRN matched by opening three tabs and eyeballing the numbers.

Three minutes a bill, twelve hundred bills a month. Multiply that out before approvals start, and capture has cost the team a week.

What the system does

Capability, input, output.

  • InvoiceNow receiving

    Input
    Structured invoice over the PEPPOL network
    Output
    Posted as data, no extraction step
  • Email-to-bill ingest

    Input
    Forwarded email + attachments
    Output
    OCR-staged bill in capture queue
  • Format coverage

    Input
    Native PDF, scanned PDF, photo, embedded image
    Output
    Same extraction pipeline for all
  • Extraction accuracy

    Input
    Unstructured supplier invoice
    Output
    Header 95 to 98%, lines 88 to 92%, confidence shown per field
  • Vendor matching

    Input
    Invoice UEN + name + bank details
    Output
    Single matched record, even where the name on the invoice differs
  • Live register status

    Input
    Captured UEN
    Output
    ACRA entity status and IRAS GST registration
  • PO + GRN linkage

    Input
    Vendor + amount + date window
    Output
    3-way status (full, partial, no-PO)
  • Input tax classification

    Input
    Line description + GL + expense type
    Output
    Claimable or blocked, flagged per line
  • Duplicate detection

    Input
    UEN + invoice no + date
    Output
    Flag with link to the original posting

Compliance + integrations

Capture isn't an island.

Every bill that enters the system resolves to a vendor, a tax position and a 3-way match status before it moves on. The capture step is treated as a tracked event with the same audit-trail rigour that applies to a posted journal entry.

Regulations we work within

  • GST Act

    Tax invoice fields validated at capture, so a missing one surfaces for vendor follow-up rather than at the return.

  • Blocked input tax

    Lines in a blocked category are flagged at capture instead of being claimed and reversed later.

  • Electronic Transactions Act

    Digital invoices retain the same legal weight as paper originals.

Connects to

  • InvoiceNow Receive over the PEPPOL network
  • Email gateway Forward-to-capture per entity
  • Vendor portal Self-service invoice upload
  • Xero Native connector
  • QuickBooks Native connector
  • SAP Business One Native connector
  • NetSuite Native connector

Bill Capture & OCR FAQ

What buyers ask.

Will OCR handle a vendor who sends a JPG of the invoice from his phone?

Yes. Photographed bills, embedded image emails, scanned PDFs and native PDFs all run through the same pipeline. Confidence drops from 95 to 98% on a clean PDF to 88 to 94% on a phone photo, with line items at 80 to 88%. Confidence is shown per field, so the team reviews only what isn't certain.

What if the vendor is not GST-registered?

Suppliers below the registration threshold have no GST to charge, and their invoices are not tax invoices. The capture flow tags them as unregistered so the line never lands in the input tax claim. Where the supply is an imported service, the bill routes to the reverse charge workflow instead.

Can we capture into a non-default cost-centre or project?

Yes. The OCR can lift cost-centre, project or department from custom fields if the vendor's invoice carries them. If not, the AP team or approver can set them inline. Rule-based defaults by vendor are also supported.

How does this compare to Xero's or QuickBooks' built-in invoice import?

Both read structured imports cleanly and both have their own capture features. Where OneFinOps earns its place is the long tail: unstructured PDFs from suppliers who are not on any standardised software, matched against a PO and a GRN before anyone approves them. The captured bill syncs back, so the books in Xero or QuickBooks can stay the system of record where the team prefers.

Do we still need OCR once we are receiving on InvoiceNow?

For your counterparties on the network, no. The invoice arrives as data, already structured, and there is nothing to extract. OCR stays for everyone else, which in practice means overseas suppliers and the smaller local ones who have not moved yet. Both paths land in the same queue and the AP team works one screen, not two.

Forward your next bill. We'll do the rest.

Set up a capture inbox in 10 minutes. Forward one bill. Header, lines, vendor match and input tax classification all done before you've finished your morning email.