How many purchase orders land in your sales inbox as PDFs every week? Someone opens each one, looks up the customer by RUT (Chile's tax ID), copies every line into the ERP, and checks that the price matches the customer's price list. It's work that takes care, not judgment, and that's exactly why it's worth automating.
In Chile, a domestic supplier's invoice already arrives as a DTE (electronic tax document) in XML. What still arrives unstructured is the customer's PO, the foreign supplier's invoice, the receipts in an expense report, contracts, and import documents.
In this guide you'll see what intelligent document processing (IDP) is, how it works, which documents to automate, an example in Odoo, and how to measure whether it pays off.
What document processing automation (IDP) is
Document processing automation is the use of software to receive a document (PDF, photo, or email), recognize what type it is, extract its data, validate it against your systems, and record it in the ERP, leaving only the exceptions to a person. When it uses AI to understand documents with no fixed format, it's called intelligent document processing (IDP).
It's part of workflow automation and AI process automation.
OCR vs IDP vs language models
OCR (optical character recognition) turns an image into text, but it doesn't know what each number is. IDP adds what's missing: classifying the document, locating each field, validating it, and routing anything doubtful to a person.
| Technology | What it does | Where it falls short |
|---|---|---|
| OCR | Converts an image or a scan into text | Can't tell the total from the VAT |
| Format-based templates | Reads fields in fixed positions | Breaks when the customer changes its format |
| IDP | Classifies, extracts, validates, and leaves a review queue | Requires setting up document types and rules |
| Language models | Read varied formats and understand context | Can make up a value if nobody checks it |
Extracting data from PDFs with AI: what language models add
Language models let you extract data from PDFs with AI without templates, even a delivery date written in a footnote. Faced with an illegible field, they may fill in something plausible, so extracted data is always validated against the ERP.
How it works: capture, classification, extraction, validation, and recording
- Capture. Documents come in through a dedicated email address, a shared folder, or a phone, with a single entry point per document type.
- Classification. The system decides whether it's a PO, an invoice, a receipt, or a contract, and which workflow it goes to.
- Extraction. It pulls RUTs, dates, amounts, line items, and terms.
- Validation. It cross-checks the extracted data against the ERP: Does the customer exist? Is the product coded? Do the price and the total add up?
- Recording. It creates the record as a draft with the document attached, or confirms it automatically only if that document type has already proven it comes out right.
The most underestimated stage is the fourth: a number read correctly can still be the wrong price.
Which documents to automate, by department
Receiving supplier DTEs is covered in finance and accounting automation, and issuing them in electronic invoicing with Odoo. Here's what still arrives unstructured:
| Department | Document | Data extracted | Where it ends up |
|---|---|---|---|
| Sales | Customer purchase orders | RUT, PO number, line items, delivery | Draft sales order |
| Purchasing | Foreign supplier invoices | Supplier, currency, amounts | Bill linked to the purchase order |
| Finance | Expense reports and bank transfer receipts | Date, amount, issuer | Expense pending approval or payment to reconcile |
| Foreign trade | Commercial invoice, bill of lading, and certificates | Values, weights, lots | Receipt and import costs |
| HR | Onboarding documents and certificates | Personal data, dates | Employee record |
| Legal | Contracts and addenda | Parties, term, renewal, penalties | Notice date and owner |
Example: from the customer's PDF purchase order to a sales order in Odoo
Here's what automating customer purchase orders that arrive as PDFs would look like, with an AI agent doing the work and a person who approves:
- The email arrives, and the agent confirms it's a PO, not a quote request or a complaint.
- It identifies the customer by RUT and pulls their price list, credit limit, and stock from Odoo.
- It maps the customer's codes to your products and compares each price with their price list. If there's no match, it doesn't guess: it flags the line.
- It creates a draft sales order in Odoo, with the PO number as the customer reference and the PDF attached.
- It leaves a task for the account rep: "3 lines match, 1 has a different price." The rep reviews the difference and confirms, without copying anything.
Afterward, Keep Checking alerts such as "Sales orders not yet invoiced" flag anything left half-done.
ERP OCR, IDP platforms, or AI agents: when to use each
Invoice digitization in Odoo
Odoo's invoice digitization uses OCR and AI to read the vendor bills you upload or email to the journal. According to its documentation, each document uses one IAP credit, XML files don't consume OCR credits, and after three bills from a vendor are confirmed without edits, Odoo offers to post the following ones automatically (reviewed in October 2026). The Expenses app also digitizes receipts using IAP credits.
Odoo 20 adds sharing files from your phone to digitize bills and expenses, plus AI-powered file renaming in Documents, but all of its AI features require IAP credits. What's available depends on your version and your plan.
In the Sales app you can upload the customer's PO to create the sales order, but the import that Odoo documents fills in the lines when the PO comes from another Odoo database as XML. A PDF PO from another system, a contract, or a certificate needs another piece.
IDP platforms
Enterprise IDP platforms process many document types, with review queues and audit trails. They fit high volumes or accounts payable in SAP, as with Tungsten Automation, formerly Kofax (see Kofax Process Director and its alternatives), but they're usually more than an SMB running Odoo needs.
Custom AI agents
A custom agent reads the document, checks it against your data according to your rules, and leaves the draft for approval: it's the right fit for documents specific to your business, like the PO in the example. If it runs outside Odoo, it needs API access: in the Odoo subscription, the external API is included only in the Custom plan (reviewed in October 2026).
Human review, accuracy, and data protection
- Human review by design. Everything starts as a draft; automatic confirmation is earned issuer by issuer.
- Accuracy measured on your documents. It depends on the scan, the format, and the field: ask for a test with 50 to 100 of your own real documents instead of trusting generic percentages.
- Data protection. Expense reports, contracts, and HR records contain personal data: limit permissions, define how long files are kept, and ask where the provider processes them (see what changes with Law 21,719, Chile's new personal data protection law).
How to measure whether it pays off and where to start
Measure before and after:
- Touchless documents: recorded without correction ÷ received.
- Time per document: from arrival until it's recorded.
- Correction rate per field: corrected fields ÷ extracted fields.
To get started:
- Pick one document type with volume and variable formats, like customer POs.
- Measure the baseline for two weeks.
- Gather real examples, including crooked scans and photos.
- Write the validation rules and clean up code mappings and price lists.
- Run a pilot in draft mode and compare it with the baseline.
- Turn on downstream controls with automatic alerts, such as Keep Checking's "Expense reports with incomplete information" or "Bills not matched to a purchase order."
Why do it with KPB Solutions
At KPB, an Odoo Gold Partner (top 5% worldwide), we bring the three pieces together. During the Odoo implementation we connect the SII (Chile's tax authority) and set up invoice and expense digitization. With custom AI assistants and agents (Kersify), we design the agent for your own documents: it works on top of your ERP or CRM, whether Odoo or another system, follows your validation rules, and leaves the draft for a person to approve. And Keep Checking, which is set up in 7 days, uses its alerts to monitor what gets recorded.
Build your alert selection and request your quote, or book a meeting and let's pick the first document your team will stop keying in by hand.