Back to all articlesAccounting

Vendor Bills in Odoo 19: Capture, Check and Post

Choose a bill-capture workflow and review references, PO matching, OCR costs, dates and payment authority.

APAAPublished Content updatedLast verifiedApplies to Odoo 19
Vendor Bills in Odoo 19: Capture, Check and Post
Illustrative cover image, not an Odoo operation screenshot or client case.

Applicability

Odoo 19 Accounting vendor bills with posting rights; purchase matching needs the relevant Purchase data/module. Email aliases require domain/journal setup; OCR digitization uses IAP credits. Lock-date exceptions require Accounting administrator authority.

Research method

Official Odoo 19 documentation research checked on 2026-10-21; examples are fictitious planning/control calculations, not APAA tests or client results.

The goal is an approved payable supported by the supplier's document, not merely a PDF in Odoo. Select one of the following capture methods, then apply the same checks before posting and payment. This documented Odoo 19 workflow is not a timed product test.

Contents

Select the capture route

RouteHow it startsWhat still needs checking
ManualAccounting → Vendors → Bills → NewSupplier, reference, dates, lines, currency and totals
Purchase-order completion/matchingSelect the supplier and relevant order, or use Purchase MatchingReceived quantities, prior partial bills and price differences
PDF upload with optional OCRUpload to the purchase journalSource document against recognized fields; credit cost
Journal email aliasSend supported PDF/XML attachments to the configured aliasCorrect company/journal, document count and duplicate receipts

The alias requires an alias domain and journal configuration. The documented journal alias processes PDF/XML; do not promise every image attachment works there. OCR is an IAP service: one digitized document uses one credit; structured XML does not require OCR credits. Upload alone does not establish that the bill is correctly recognized or approved.

Review and post one bill

  1. Retain the source bill and supplier's invoice reference. Check existing bills, the supplier and amount for duplicates; partial invoices can legitimately share an order reference.
  2. Compare bill lines with the order and receipt where applicable. Odoo 19's Purchase Matching view shows received purchase-order products; a mismatch requires an explanation, not an unchecked match.
  3. Confirm bill date, due date/payment terms, accounting date, company, currency, expense/asset account and any approved taxes. Independently verify changed supplier bank details through your established approval channel.
  4. Have a user with the required Accounting permissions confirm/post the reviewed bill. Capture, configuration, posting and payment are different responsibilities; ordinary data-entry access should not be assumed to permit all four.
  5. Keep the posted payable separate from payment release. Check aged payables and reconcile the actual outgoing bank transaction afterward.

Worked example: partial delivery

Fictitious HKD example with no tax assumed: an order is 10 chairs × HK$800 = HK$8,000. Six chairs were received; the supplier bills HK$4,800 for those six. Accepting that bill leaves four chairs, HK$3,200, still unbilled against the original order. A later bill must be checked against the remaining receipt/quantity, not blindly copied from the first.

If the first bill instead charges HK$8,000, stop and resolve whether it is an agreed advance or a quantity error. Keep the explanation and approval attached. If the same HK$4,800 document arrives via upload and email, retain a single payable after review; two attachments do not justify two liabilities.

Dates and automation boundaries

Bill Date records the document's issue date; Accounting Date controls the posting period. Odoo's Lock Everything prevents posting on or before its date and can move the accounting date after the lock. Review the resulting date, retain the original bill date and follow your period-close policy. Accounting administrators can configure documented exceptions; a Hard Lock is irreversible. Do not advise ordinary users to remove locks to clear an error.

Keep new or irregular suppliers on manual review. Vendor auto-posting requires automatic digitization and an explicit vendor option; “ask after three validations without edits” is not approval of every later bill.

For a correction after posting use credit notes, then follow bank reconciliation after payment. Contact APAA for configuration and control scoping.

Sources

  • Vendor bills

    Manual/upload/email creation, PO matching, completion and payment stages

    Source checked

  • Document digitization

    OCR IAP, accepted email formats and auto-post conditions

    Source checked

  • Year-end closing

    Lock Everything, adjusted accounting dates and administrator exceptions

    Source checked

Considering Odoo for your business?

Talk to APAA about a tailored Odoo implementation for your Hong Kong SME.

Enquire about Odoo services
Vendor Bills in Odoo 19: Capture, Check and Post | APAA