Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Accounting
  3. Vendor Bill Automation v 19.0
  4. Sales Conditions FAQ

Vendor Bill Automation

by ERP Heritage https://www.erpheritage.com.au/
Odoo
v 19.0 Third Party 21
Download for v 19.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Inventory (stock)
• Invoicing (account)
• Purchase (purchase)
Community Apps Dependencies Show
Accounting Suite Base
Lines of code 4309
Technical Name eh_account_ap_automation
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Inventory (stock)
• Invoicing (account)
• Purchase (purchase)
Community Apps Dependencies Show
Accounting Suite Base
Lines of code 4309
Technical Name eh_account_ap_automation
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
ERP Heritage ERP Heritage · Odoo Accounting Suite
Vendors

Vendor Bill Automation

Vendor bill intake with three-way match (PO, goods receipt, invoice), tolerance profiles per partner, regex parser, append-only override audit.

Odoo 19 Community v19.0.1.0.3 LGPL-3 Accounting/Accounting Original work
ERP Heritage reporting dashboard
3-way match
Tolerance profiles
Regex + extractor adapter
Append-only override log
BUILT FOR
AP teams processing 100+ vendor bills a month
SAVES YOU
Up to 70% of bill data-entry time on routine invoices
REPLACES
Manual key-in, error-prone OCR add-ons, regex-only parsers

Day in the life

100 vendor bills land Monday morning. Three of them are duplicates.

The mail alias drops every incoming bill into the intake inbox as PDFs. The regex parser pulls vendor reference and total from each. The duplicate detector hashes (vendor, ref, amount, date) and flags two bills that arrived twice and one that already posted last week. The three-way match against the open POs surfaces a quantity exception on a fourth bill. The bookkeeper resolves the four flagged cases first; the remaining 96 auto-post in a single batch. Total time: under an hour vs. half a day of manual entry.

Overview

What this module does, in one read.

A vendor bill intake pipeline. Bills arrive via email or upload; the regex parser recognises supplier, total, due date; the three-way match validates against the matching purchase order and goods receipt.

The extractor adapter is pluggable: a partner package can register its own OCR or LLM-based line extractor without forking the suite. By default the regex parser ships and no remote calls are made.

eh_account_baseaccountpurchasestockmail
ERP Heritage
Module
eh_account_ap_automation
VERSION
19.0.1.0.3
LICENCE
LGPL-3
CATEGORY
Accounting/Accounting
SUITE
24 modules

Capabilities

Eight things this module gives you, with no padding.

CAPABILITY 01

Email-to-bill alias

Bills arrive as email attachments; the alias creates an intake row and parses the body for supplier and total.

CAPABILITY 02

Three-way match

The match validates qty and price against the PO line and the goods receipt; over-tolerance breaks pop into exception state with the explicit reason.

CAPABILITY 03

Tolerance profiles

Per-partner tolerance profiles encode the deployment policy; defaults ship as demo data.

CAPABILITY 04

Regex parser

A pure-Python parser recognises supplier, total, due date from the raw text. Confidence is recorded on the intake.

CAPABILITY 05

Pluggable extractor

Partner packages can register an OCR or LLM line extractor; the suite ships no built-in remote dependency.

CAPABILITY 06

Append-only override audit

When the operator overrides a tolerance breach the override is recorded with reason; the audit log refuses write and unlink.

CAPABILITY 07

Multi-company aware

Intakes, profiles, and matches all sit under company scope; partner email resolution scopes to the active company.

CAPABILITY 08

Plays with batch payment

Posted bills flow into the batch payment selection so the team pays the matched bills in one batch.

Compared

How this module stacks up.

FEATURE
MANUAL
PAID ADD-ON
THIS MODULE
Bill ingestion
Email forwarding + manual entry
OCR add-on subscription
Mail alias + regex + LLM extractor stub
Duplicate detection
Catch-by-eye
Yes
Hash on (vendor, ref, amount, date) with manager override + reason
Three-way match
Manual cross-check
Yes
PO + GR + bill auto-match with tolerance bands
Approval gate
Email approval
Vendor-locked workflow
Wired to eh_account_approval state machine
LLM line extractor
N/A
Single-vendor lock-in
Provider registry: Claude / OpenAI / local stubs
70%
Time saved
Routine bills clear without manual data entry.
4
Match dimensions
Vendor + reference + amount + date duplicate fingerprint.
3
LLM stubs
Claude, OpenAI, local OpenAI-compatible.

Workflow

Configure once. Operate. Audit. Report.

Four steps, the same across every ERP Heritage module so a finance team learns the suite once.

1

Configure

Settings > Accounting > ERP Heritage. Multi-company, multi-currency, journals, accounts. One-time setup, persisted on the company record.

2

Operate

The user works inside the standard Odoo accounting flow. The module surfaces only the controls relevant to its scope.

3

Audit

Every action that changes accounting state writes an audit row. The audit log is append-only at the framework level.

4

Report

Reports flow through the same reproducible audit pipeline, with cache invalidation by per-company move version.

Why Heritage

Where this module leads, where it matches, what we are honest about.

Where it leads
  • Three-way match with explicit exception state
  • Pluggable extractor adapter (OCR / LLM-ready)
  • Append-only override audit log
Where it matches
  • Email alias intake
  • Tolerance profiles per partner
  • Standard purchase + receipt linkage
Honest about
  • No default OCR shipped (deployment chooses)
  • Regex parser is a baseline, partner packages add depth
  • No automatic payment scheduling on post

The full ERP Heritage Accounting Suite (26 modules)

Accounting Suite Base Engine: audit log, cache, SQL builder, privilege groups
Dynamic Account Reports P&L, BS, TB, GL, Aged R/P, Cash Flow, Partner Ledger
Dynamic Reports Pro Builder, scheduling, forecasting, saved views
Bank Reconciliation Pro Reconciliation widget plus user-defined rules engine
Collections Workbench Workbench plus follow-up letter engine, broken-promise cron
Fixed Assets and Leases Assets, IFRS 16 leases, multi-book, AU tax depreciation
Post Dated Cheques Cheque registers, bounce / replace flow
FX Period End Revaluation IAS 21 revaluation, IFRS 9 hedge accounting (CFH/FVH/NIH)
Recurring Invoices Pro Cadence-driven recurring invoices
Period Close Workflow Period close checklist and sign-off
Year-End Closing Year-end closing wizard, reversal and lock
Multi Version Budget Pro Multi-version budgets, encumbrance, PO overrun block
Vendor Bill Automation Bill intake, three-way match, LLM extractor stubs
Bank Statement Import CSV / OFX / CAMT.053 / MT940 + Plaid / Basiq stubs
Batch Payment Batch AR / AP runs, per-partner aggregation
Inter-Company Rules Auto-mirror invoices and bills between companies
SEPA Credit Transfer PAIN.001.001.03 + .09 SEPA Credit Transfer generator
SEPA Direct Debit PAIN.008 plus mandate lifecycle
Peppol eInvoicing UBL 2.1 BIS 3.0 + ANZ/MY/DE/FR country profiles
AU BAS Reporting Australian Business Activity Statement, ABN validator
Approval Workflow Multi-step approval, atomic step pointer
Customer Credit Limit Hard credit limit gate, manager override audit
Customer Portal Extra Statement download, AR balance card on portal home
Financial Dashboard Cash, AR, AP, P&L plus optional KPI tiles
Group Consolidation Multi-entity roll-up, IC elimination, IAS 21 CTA, NCI
AI Agent Layer JE anomaly, variance commentary, collections next-action

Engineering

Ten engineering rules we hold ourselves to.

No silent fallbacks.Missing config, missing accounts, malformed input each surface explicit messages naming the bad field.

Tests cover the bug, not just the feature.Every defect found in review has a regression test attached to the fix, kept in the repository.

Plain Python where possible.Algorithms that do not need the ORM live under tools/ with unit tests that run without Odoo.

Atomic counters via SQL.Concurrent counters use UPDATE col = col + 1, never read-modify-write loops.

Per-record savepoints in cron loops.A single bad record never freezes the batch; failing rows are recorded, the rest of the batch keeps moving.

Schema-first XML output.PAIN.001 and PAIN.008 generators target the published namespace; tests parse output back and assert structure.

ValidationError versus UserError.Constraint failures raise ValidationError; action failures raise UserError with a remedy.

Privilege groups, not direct upstream references.ACL CSVs reference suite-specific groups; the post-migration script promotes upstream-only users.

Append-only audit logs.Approval log, override log, reconciliation audit, mandate amendment log all override write and unlink at the model level.

Originality from public spec.Every standard implementation is built from the published technical specification, not from another vendor codebase.

ERP Heritage
The standard we hold: every shipped capability is original code from a public technical specification, with regression tests, with a documented engineering rule for the invariant the code preserves, and with no vendor names in code or user-facing docs. From the suite contributing process

Frequently asked questions

Honest answers to the questions a buyer asks.

Does this run on Odoo 19 Community?

Yes. Every module is built and tested against Odoo 19 Community. No Enterprise dependency anywhere in the stack.

What is the licence?

LGPL-3, the same licence as Odoo Community. You can read the source, modify it, and ship it inside your own Odoo deployment without restriction.

Will this conflict with another accounting addon I already use?

Probably not. The modules add new models in their own namespace (eh.*) and inherit standard models without overriding behaviour silently. If your existing addon also extends the same standard model, ordinary Odoo inheritance rules apply.

Are the engineering principles documented?

Yes. The contributing process and ten engineering rules are kept in the repository so a reviewer can verify the code holds itself to them.

Is there a test suite?

Yes. Every module ships its own integration tests; the engine module ships a full unit test suite for the SQL builder, cache, and report orchestrator.

How do I get support?

Reach the team via info@erpheritage.com.au. Training, deployment, and custom extension work is handled by ERP Heritage directly.

ERP Heritage

Built by ERP Heritage

ERP Heritage builds enterprise-grade accounting software for the Odoo community. Our suite covers the operational accounting cycle end to end: invoice intake, posting, reconciliation, reporting, period close, payment runs, customer portal, multi-step approvals, and year-end. Every module ships with explicit licensing posture, documented engineering principles, comprehensive tests, and a clear differentiation story.

Global Odoo CommunityOdoo PartnerLGPL-3 to the community24 cohesive modulesOriginal work

Ready to deploy?

Install this module, run the test suite, and inspect the structured audit log. For training, deployment, or a custom extension, reach our team.

Install from the Odoo Apps Store info@erpheritage.com.au
Get in touch

Talk to ERP Heritage about Odoo implementation, customisation, training, or support.

End-to-end engagement across the Odoo platform: implementation, customisation, reimplementation, functional and technical training, ongoing support, integration planning, and scoped extensions. One team, one response within a business day.

Email
info@erpheritage.com.au
Phone
+61 469 095 910
Web
www.erpheritage.com.au
Implementation
Functional discovery, fit-gap, scoping, sample tenant, go-live plan.
Customisation
Custom modules, reports, integrations, localisations, reimplementation.
Training & support
Functional and technical training, hand-over docs, ongoing support.
ERP Heritage · erpheritage.com.au
Engineered for the global Odoo Community

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with