Skip to content
Changelog

What's New

The latest features and improvements to InvoiceParser Pro.

Improved

GL Coding — Visible Vendor Rule Learning with Undo

  • When you change the GL account on an invoice in the Review page, the system has always saved that as a default rule for the vendor — silently. Now you see a small notification confirming the rule was saved, with a one-click Undo if it was the wrong move.
  • Notification shows the vendor name and the GL code/name that was learned. Auto-dismisses after 6 seconds; Undo button works the entire time.
  • Undo deletes the rule completely (the row in firm_vendor_rules), so the next invoice from the same vendor goes back to whatever GL it would have had before.
  • No change to the auto-coding behavior itself — vendor rules still apply on future invoices the same way they always have. This is just visibility + a safety net.
Improved

Bulk Approve from Review Queue

  • New checkboxes on every pending invoice in the Review queue. Pick rows with the per-row checkbox or "select all visible" in the header, then approve or flag the whole selection from a sticky bottom bar.
  • Validation gate: invoices with math errors are skipped on bulk approve and called out in the result toast — same gate as auto-approve, so what gets approved in bulk matches what would auto-approve. Open the row individually to override.
  • Already-reviewed rows can't be selected. Filters/page change clears the selection so you never act on a row that's no longer visible.
Improved

Reject Reason Templates

  • Rejecting an invoice now opens a small dialog asking why — wrong currency, missing PO number, disputed line item, duplicate invoice, vendor mismatch, unauthorized purchase, incomplete extraction, or other (free text). Closes the audit-trail gap where rejected invoices left no structured record of why.
  • The chosen reason shows up on the rejected status banner in the Review page and gets logged with the activity entry, so the next reviewer or auditor can see "Rejected — Wrong currency" without digging through notes.
  • Existing free-text notes are preserved — anything written before this PR keeps showing as plain text. New notes can still be free-form on top of the structured reason.
Improved

SWIFT BIC Currency Disambiguation

  • A bare "$" on an invoice from a country whose local currency is also written "$" (Namibia, South Africa via "R", and similar) now resolves to the correct local currency when the invoice carries a SWIFT/BIC code. The bank's country code (chars 5-6 of the BIC) is read as the settlement currency.
  • Direct extraction fields (bank_swift_code / bank_bic / swift_code / swift_bic / bic) are checked first; failing that, payment-instruction blocks and footer text are scanned for BIC-shaped strings.
  • Unambiguous symbols still win — N$, R$, US$, €, ₹ and explicit currency text override the BIC layer. The override only fires for the bare ambiguous symbols.
  • Closes the limitation noted in the 2026-04-29 multi-currency release.
New

Per-Client Defaults — Currency and GL Account

  • Each client now has a default currency and a default GL account. Set them once in the Clients tab via the new defaults editor (sliders icon next to each client row).
  • Default currency kicks in only when the 13-layer resolver returns "unknown" — an explicit USD on a US-vendor invoice for the same client still wins. Useful for clients in jurisdictions where invoices arrive bare ("$1,234.56" with no currency markings) and you know they should always be NAD or ZAR or whatever.
  • Default GL account sits BELOW vendor rules — a learned vendor rule still wins first. The default applies when no vendor rule matches yet, so the very first invoice for a new vendor at this client is auto-coded too. Picks the right account for whichever ERP you have connected (QB / Zoho / Xero); switching providers without updating the default flags it as stale.
  • Per-client defaults show as small pills on the client row: blue for currency, green for GL.
Improved

Synced-to-ERP Badges Everywhere

  • "Synced — QB / Zoho / Xero" badges now appear on every surface where you might re-push an invoice — not just the dashboard row. The invoice drawer, the Review page, and the per-invoice rows in the Push results all show prior sync state at a glance.
  • When pushing to QuickBooks, you now see if the invoice was already synced to Zoho or Xero (or vice versa). Helps catch cross-ERP duplicates before they happen, especially for firms running parallel books during a migration.
  • Hover any badge for the exact sync timestamp.
Improved

Multi-Currency Detection (NAD/ZMW/CDF/ZAR) & Synced-to-ERP Badges

  • Currency detection now disambiguates Namibian Dollar (NAD), Zambian Kwacha (ZMW), Congolese Franc (CDF), and South African Rand (ZAR) from US Dollar. Invoices marked "N$", "ZK", "FC", or just "R" now resolve to their correct currency instead of defaulting to USD.
  • Context — vendor country, phone country code (+264 / +260 / +243 / +27), email TLD (.na / .zm / .cd / .za), and address keywords (Walvis Bay, Lusaka, Kinshasa, Johannesburg, etc.) — disambiguates the currency when no symbol was extracted, or when the extracted symbol is specific like "N$". A bare "$" short-circuits to USD before any of that context is read; the extraction needs to surface "N$" specifically (it usually does on Namibian docs) for context to take over.
  • New "Synced — QB / Zoho / Xero" badges on every invoice row in the dashboard. Once an invoice has been pushed to an accounting system, the badge stays put — no more guessing whether you already pushed it and risking a duplicate vendor bill.
  • Synced-state is timestamped at push time and surfaces immediately on refresh. Hover the badge to see the exact sync timestamp.
Fixed

Portal Uploads, Zoho VAT Parity & Audit Trail Fixes

  • Inbox-to-firm portal uploads now persist correctly. A foreign-key ordering bug in the worker meant invoices forwarded to your firm inbox would extract successfully but never appear in the dashboard or push to QuickBooks/Zoho. The parent batch row is now created before per-invoice INSERTs, so every emailed invoice lands where it should.
  • Zoho Books bills now match QuickBooks bills to the cent. The Zoho push was reading the net (excl-VAT) line price where QuickBooks read the gross (incl-VAT) total, which silently dropped the tax component on multi-currency VAT invoices. Both adapters now use the same field-resolution order, so an NAD or ZAR invoice pushed to Zoho hits the same total as the same invoice pushed to QuickBooks.
  • Inbound emails from forwarders or role mailboxes (e.g. accounts@yourcompany.com) no longer fail silently. If the sender is not a registered IPP user, the upload is now attributed to the firm owner with the original sender preserved in the audit trail — no more lost invoices when a junior staffer forwards from an unregistered address.
  • Workers now mark a batch failed instead of "completed with 0 successful" when persistence drops everything. If the database is having an off day, you see the error in the Batches tab immediately instead of staring at an empty review queue.
  • Cleanup-job log volume reduced ~99% so engineers can actually see real activity in deploy logs. No behavioural change to retention — just one summary line per category instead of one per orphaned file.
New

Zoho Books Integration — Full OAuth Push

  • Zoho Books is now available as a direct integration alongside QuickBooks Online and Xero — completing the three-way accounting integration suite.
  • Connect your Zoho Books organization via OAuth from the Integrations tab. Tokens are Fernet-encrypted at rest; your Zoho credentials never touch our servers.
  • Approved invoices push as vendor bills with vendor details, line items, tax components, and due dates mapped to your Zoho Books chart of accounts.
  • Firm and Firm Pro plans support multi-organization setups — each client workspace can connect to a separate Zoho Books organization.
  • CGST/SGST/IGST extracted and mapped to the corresponding Zoho Books tax rate — full Indian GST support out of the box.
New

Developer API — Webhooks, Batch Endpoint & Automation Flag

  • Webhooks: register an HTTPS endpoint and receive a signed push notification the moment a job completes or fails — no polling required. Payloads are signed with HMAC-SHA256 so you can verify authenticity.
  • Batch API: submit up to 25 invoices in a single POST /api/v1/batches request. Returns per-file results and combined Excel/CSV downloads when complete.
  • New automation_ready field on every extraction result — true when confidence is HIGH and math validation passes. Use it as a direct gate before posting to your ERP without human review.
  • include_bounding_boxes param: opt in to receive Azure Document Intelligence polygon coordinates per field alongside the JSON result.
  • external_id idempotency key: supply your own ID on upload and safely retry on network errors without double-charging credits.
New

Anomaly Detection — Vendor Amount Spikes

  • InvoiceParser Pro now flags invoices where the total amount is significantly above that vendor's historical average.
  • Anomaly warnings surface in the review queue so your team can verify before approving unusually large invoices.
  • Available on Firm and Firm Pro plans. Threshold is calculated per-vendor across your invoice history.
  • Works in conjunction with duplicate detection — both checks run automatically on every invoice at extraction time.
Improved

Vendor Learning — GL Account Auto-Mapping

  • The vendor learning system now applies GL account auto-mapping across future invoices from the same vendor.
  • When you approve a line item and correct its account code, InvoiceParser Pro remembers that mapping. The next invoice from the same vendor pre-fills the corrected account code automatically.
  • Firm-wide learning: corrections made by any team member on any client workspace contribute to the firm's shared vendor knowledge base.
  • Account mappings are visible and editable in the Vendor Settings panel. You can override or reset any mapping at any time.
Improved

Security Hardening — API Key Hashing & Token Rotation

  • API keys are hashed with SHA-256 before storage. The plaintext key is shown once at creation time and cannot be retrieved — only rotated.
  • OAuth tokens for QuickBooks, Xero, and Zoho Books connections now rotate automatically on each use, reducing exposure from any single token compromise.
  • Added a security event log to the Account Settings page — view API key creation, revocation, and integration connection events with timestamps.
New

API v1 Developer Access — General Availability

  • The InvoiceParser Pro REST API is now generally available on Firm and Firm Pro plans.
  • Create and manage API keys from the API Access page. Keys are scoped to your account and can be revoked instantly.
  • Full endpoint coverage: upload invoices, poll job status, list jobs, download Excel/CSV, and read account info — all via Bearer token auth.
  • Rate limits: 60 requests/minute for uploads, 120/minute for reads. Confidence, validation status, and all extracted fields returned in the JSON result.
  • Full API reference available at invoiceparserpro.com/docs/api.
Improved

GPT-4o Extraction Upgrade

  • The enrichment stage of the extraction pipeline has been upgraded to GPT-4o, replacing the previous model.
  • Measurable improvement on complex layouts: multi-column invoices, non-standard templates, and invoices with dense line item tables.
  • Higher average confidence scores across the corpus — fewer invoices landing in the manual review queue.
  • Better handling of foreign-language invoices: vendor country is now inferred from address, phone country code, and email domain TLD.
New

Enterprise Proof-of-Concept Programme

  • Teams evaluating InvoiceParser Pro at volume can now apply for a time-boxed free trial with a dedicated invoice cap.
  • POC accounts get full API access, batch processing, and priority support during the evaluation window.
  • No credit card required for the POC period. Contact us to apply.
New

Xero Integration

  • Connect Xero and push approved invoices as vendor bills with one click
  • Automatic vendor matching — contacts are created in Xero if they don't exist
  • Select your preferred expense account for bill line items
  • Full support for both personal accounts and multi-user firm workspaces
New

Dashboard Analytics & Activity Feed

  • New Analytics tab with processing volume trends, approval rates, top vendors, and confidence breakdown
  • Activity feed showing a full history of approvals, exports, and uploads
  • Saved views — save your favorite filter combinations and switch between them instantly
New

Duplicate Detection

  • Invoices are now automatically checked for duplicates based on vendor and invoice number
  • Duplicate warnings appear during review so you never process the same invoice twice
New

Keyboard Shortcuts

  • Navigate the document table with J/K or arrow keys, press Enter to open review
  • Press / to jump to search, X to select rows, and [ ] to switch pages
New

QuickBooks & Zoho Books Integrations

  • Push approved invoices directly to QuickBooks Online as vendor bills
  • Export invoices to Zoho Books with your preferred expense account
  • Built-in safeguards prevent accidental duplicate pushes
  • Xero support added March 14 — see above
New

Invoice Review Workflow

  • Review extracted data side-by-side with the original document
  • Approve, flag, reject, or correct individual fields and line items
  • Review queue with filtering so you can work through invoices quickly
New

Firms Platform for Accounting Firms

  • Dedicated workspaces for firms with client management and role-based access
  • Recurring invoice tracking and anomaly detection across clients
  • Invite team members and track activity across the firm
New

Multi-Tax Support & Extended Extraction Fields

  • Multi-tax breakdown: invoices with multiple tax components (e.g. CGST + SGST + IGST) now return a full taxes[] breakdown alongside the single tax total.
  • Purchase order number extracted and returned when present on the invoice header — useful for matching invoices to POs in your ERP.
  • Vendor address and ISO country code now extracted — enables geo-routing and country-specific tax rule application downstream.
  • Bill-to customer name extracted for multi-entity workflows routing invoices by recipient.
  • Service start and end dates extracted from SaaS, utility, and subscription invoices — enables accurate accrual accounting and prepaid expense recognition.
  • Payment routing details extracted: IBAN, SWIFT/BIC, bank account number, and BPay reference where present on the invoice.
  • Payment terms text (e.g. "Net 30", "Due on receipt") now returned alongside the due date.
New

Batch Processing & Export

  • Upload and process up to 50 invoices at once
  • Export to Excel, CSV, and accounting-ready formats for QuickBooks, Zoho, and Xero
  • Custom export templates — choose exactly which fields to include
  • Configurable data retention to control how long original files are stored
Improved

Azure Document Intelligence Extraction Engine

  • Extraction engine upgraded to Azure Document Intelligence prebuilt-invoice model as the primary extraction layer.
  • Significantly improved accuracy on complex multi-column layouts, handwritten annotations, and scanned documents.
  • Bounding box overlay in document review: extracted fields are now highlighted directly on the source document at pixel-accurate positions.
  • Per-field confidence scores — the review UI surfaces low-confidence highlights at field granularity so you know exactly what to check.
  • Validation engine introduced: math cross-check between subtotal, tax, and total. Invoices that pass validation are marked as automation-ready.
New

InvoiceParser Pro Launch

  • AI-powered invoice data extraction with full line-item detail
  • Confidence scoring on every extraction so you know what needs a second look
  • Support for PDF, JPEG, PNG, TIFF, HEIC, and WebP uploads
  • Passwordless sign-in — just enter your email and click the link