FAQ · Tools and setup

How do you automate invoice processing in Xero?

Xero can turn forwarded or uploaded bills into drafts for approval. For line items, purchase order checks, approval rules or other systems, a workflow creates the bills through the Xero API. This page covers what each route does, how to stop duplicate bills, and what the API limits allow.

Key takeaways

  • Xero says its AI turns forwarded or uploaded bills into draft bills ready for approval.
  • In the API a bill is an ACCPAY invoice; create it as DRAFT or SUBMITTED, not AUTHORISED.
  • Check contact, number and total before creating, and send an Idempotency-Key on retries.
  • Xero allows 60 calls a minute and 5,000 a day per organisation; about 20 bills a minute.

How do you automate invoice processing in Xero?

Forward or upload supplier bills and Xero's own capture creates draft bills for you to approve. For line items, purchase order checks, approval rules or other systems, a workflow on n8n, Zapier or Make reads each invoice and creates the bill through Xero's API.

In Xero a supplier invoice is a bill, and in the API a bill is an invoice of type ACCPAY. Everything on this page comes from Xero's own product pages, its developer documentation and its published API specification, read on October 30, 2026. It is one part of the wider AI document processing systems we build, and it pairs with our guide to automating bills in QuickBooks Online if you run both.

There are two routes, and many businesses use both:

  • Xero's built-in capture. You email, upload or photograph a bill. Xero's AI reads it and creates a draft bill that a person approves.
  • A custom workflow. An automation platform watches an inbox or folder, sends each file to an extraction model, checks the result against your rules, and posts the bill through the Xero API with the PDF attached.

What does Xero do on its own with supplier bills?

Xero says you can forward bills from email or upload them, and its AI "extracts the key details to create draft bills ready for approval." It attaches the original file, flags duplicate uploads, and lets you set who can create and approve bills.

Xero's US product pages state the following, checked October 30, 2026:

FeatureWhat Xero saysSource
Getting bills in"Automate bill entry by uploading files directly to Xero or forwarding bills from your email"; documents can also be photographed in the Xero Accounting app or dragged and droppedPay bills page; Smart Document Capture page
Data extraction"Xero's AI extracts the key details to create draft bills ready for approval"; it captures "the amount, date, and other details automatically"Pay bills page; Smart Document Capture page
File typesJPG, PNG, PDFs and Word documentsSmart Document Capture page
Original file"Xero attaches the original photo or file to the digital record"Smart Document Capture page
Duplicates"Detect and flag duplicate bills automatically"; Xero "spots if you mistakenly upload a document twice"Both pages
ControlsRoles and permissions for "who can create and approve bills"Pay bills page
PlansSmart Document Capture is listed on the Early, Growing and Established plans; Early lists 5 bills, and automated bill entry is listed on Growing and EstablishedPay bills page (US)

Sources: Xero: pay bills and Xero: Smart Document Capture. Xero also says its AI is "highly accurate when documents are visually clear", which describes a condition and gives no rate. Neither page lists exactly which fields are extracted or says whether line items are read, so test that on your own bills before relying on it.

When is Xero's own bill capture enough, and when do you need a workflow?

Built-in capture is enough when bills arrive in modest numbers, only go to Xero, and a person reviews each draft. A workflow earns its place when you need line items, purchase order matching, approval rules, bills from many inboxes, or data sent to other systems.

Xero capture or a workflow?

Xero capture or workflowDecision: if bills only go to Xero, arrive in modest numbers and a person reviews each draft, Xero capture is usually enough; if you need line items, PO matching, approval rules or other systems, add a workflow.Do bills need more than a draft?Line items, PO match, routing, other systemsNo: Xero captureDraft bills, you approveYes: add a workflown8n, Zapier or MakeMany teams use both: capture for ad hoc bills, a workflow for volume.
Xero capture and a workflow are not exclusive. The workflow handles the volume and the rules.
Your situationXero capture aloneWorkflow on top
A few dozen bills a month, one inbox, one person approvesUsually enoughRarely worth building
You need every line item coded to the right account or tracking categoryNot stated on Xero's pages; test firstThe model returns each line, and rules map it to an account code
Bills must match a purchase order before paymentNot describedQuantities and prices are compared with the PO; differences go to review
Approval depends on amount, supplier or departmentRoles control who approvesRouting rules send each bill to the right approver in Slack, email or a review sheet
The same invoice also has to reach a CRM, project tool or AirtableNot coveredOne run updates every system
Bills arrive in several mailboxes, portals or shared drivesOne forwarding route per organisationThe workflow watches each source

We say this on the free call too: if capture covers your bills, we tell you, and there is nothing to build. When the documents reach beyond Xero, the build is closer to business process automation than to a single Xero fix.

How does a Xero bill workflow work in n8n, Zapier or Make?

The workflow saves the file, extracts the fields with an AI model, finds the supplier in Xero, checks for a duplicate, then creates an ACCPAY bill as a draft and attaches the PDF. Anything that fails a check goes to a person.

From supplier email to a bill in Xero

Xero bill workflowFlow: the bill arrives and the original is saved; an AI model extracts the fields; the supplier contact is found in Xero; a duplicate search runs on contact, number and total; anything uncertain goes to review; an ACCPAY bill is created as draft or awaiting approval; the PDF is attached and the bill ID stored.Bill arrives, original savedBills inbox or watched folderAI extracts the fieldsHeader, totals and each lineFind the supplier contactTax number or alias firstSearch for a duplicateContact, number and totalNo match or failed check?Review queue with the pageCreate ACCPAY bill as draftIdempotency-Key on the requestAttach PDF, store bill IDA retry never posts twice
The run we build for Xero bills. Only bills that pass every check are created without a person.

We build Xero bill automations for client businesses, alongside the QuickBooks Online ones. This is the run we build, step by step:

  1. Intake. A dedicated bills inbox or a watched folder. The original is saved first, so a later failure never loses the file.
  2. Extract. An extraction model returns supplier name and tax number, invoice number, dates, currency, totals, tax and each line item as structured data. The cost per page of each extraction service differs by more than 100 times between the cheapest and the dearest option, so we pick it from your volume and document types.
  3. Find the contact. The supplier is matched to an existing Xero contact, by tax number or an alias table first and by name second. No match goes to review instead of creating a new contact.
  4. Check for a duplicate. The workflow searches Xero for a bill from that contact with the same invoice number and total.
  5. Create the bill. An invoice of type ACCPAY is created with status DRAFT or SUBMITTED (awaiting approval). We almost never post straight to AUTHORISED.
  6. Attach the PDF and log the ID. The original file is attached to the bill, and the bill ID Xero returns is stored next to the file name, so a retry can never post the same file twice.

What each platform gives you, from its own documentation:

PlatformXero supportWhat we add
n8nThe Xero node covers Contact and Invoice resources with create, get, get all and update; for anything else the docs point to the HTTP Request node with your Xero credentialAn HTTP Request call for the attachment upload, and code steps for the checks
ZapierActions include Create Bill, Upload Attachment (up to 10 attachments per resource), Find Contact and Find or Create ContactA Find step for duplicates before Create Bill, and Paths for review routing
MakeA verified Xero app maintained by Make, including a Watch Invoices trigger; we use its modules or plain HTTP calls to the same APIThe same checks as above

Sources: n8n Xero node docs and Zapier Xero integrations, checked October 30, 2026. For high volumes we usually build on n8n; for a small, simple flow, Zapier is quicker to set up.

How do you stop duplicate bills in Xero?

Check before you create: search for a bill from the same contact with the same invoice number and total, send any match to review, and send an Idempotency-Key header with each create request so a retried call cannot post the bill twice.

Duplicates are the most common problem in any bill automation, and Xero's API needs two specific guards:

  • Do not rely on the invoice number being unique. In Xero's published API specification, the uniqueness note on InvoiceNumber is written for sales invoices (ACCREC): "Unique alpha numeric code identifying invoice". Supplier bills come with the supplier's own numbers, and two suppliers can both send "1001". So the workflow checks contact plus invoice number plus total, not the number alone.
  • Use the Idempotency-Key header on retries. Xero's specification describes it as allowing you to "safely retry requests without the risk of duplicate processing", with a 128-character maximum. We build the key from the file's hash, so a timeout and retry on the same file reuses the same key.

Two more guards come from the workflow itself: classify each document first, so statements and payment reminders are filed instead of posted, and keep a log of every file already turned into a bill. Xero's own capture also flags documents uploaded twice, which helps when people forward by hand alongside the workflow.

What do Xero's API limits mean for bill volume?

Each Xero organisation allows 5 calls at once, 60 calls a minute and 5,000 calls a day. At about three calls per bill that is roughly 20 bills a minute; the free Starter developer tier allows 1,000 calls a day.

Xero API limits per organisation

Xero API limitsStat tiles: 5 calls in progress at once per organisation; 60 calls per minute; 5,000 calls per day; 1,000 calls per day on the Starter developer plan.5Calls at once60/minCalls per minute5,000/dayCalls per day1,000/dayStarter planPer Xero organisation; app-wide limit 10,000 a minute.
Sources: Xero API limits FAQ and Xero developer pricing; read October 30, 2026.
LimitValueWhat it means for bills
Concurrent calls per organisation5 in progress at onceRun the queue with at most 5 parallel requests
Calls per minute per organisation60About 20 bills a minute at 3 calls each (contact lookup, create, attach); our estimate
Calls per day per organisation5,000About 1,650 bills a day at 3 calls each, before any other app uses the quota
Starter developer plan1,000 calls per day per organisationAbout 330 bills a day at 3 calls each
Over a limitA Retry-After header says how many seconds to waitThe workflow waits that long, then retries with the same Idempotency-Key

Sources: Xero API limits and Xero developer pricing, checked October 30, 2026. The calls-per-bill figure is our design estimate, not a Xero number. The daily limit is shared with every other app connected through the same developer app, so a sync tool and a bill workflow on one connection compete for it.

What does Xero bill automation cost?

Three parts: your Xero plan, the extraction service (under $1 to about $100 per 1,000 one-page invoices at list prices) and the build. At the time of writing our call and audit are free and a small build is about $1,000.

  • Xero. Xero's US page lists automated bill entry on the Growing and Established plans; the Early plan lists 5 bills.
  • Extraction. Our dataset of 2026 document AI prices works out the cost per 1,000 pages for each service with the arithmetic shown.
  • Automation platform. n8n, Zapier and Make price runs differently; our n8n and Zapier pricing research compares them.
  • Our build. A typical small Xero build is intake plus extraction, validation and posting. Larger systems get a fixed price after the free audit; fixes to anything we build are free for 6 months, and monthly support from $200 is optional after that. Our FAQ on software costs on top of a build lists what else to budget.

More questions about Xero invoice automation

Can Xero read line items from a supplier bill?

Xero's pages say its AI captures "the amount, date, and other details" and creates draft bills, but they do not list the fields or say whether every line item is read. If you need each line coded to an account or tracking category, test a sample of your real bills in Xero first. A workflow can return every line from the extraction model and map it to an account code with rules you control.

Can Zapier create bills in Xero?

Yes. Zapier's Xero integration has a Create Bill action that creates an Accounts Payable bill, plus Upload Attachment, Find Contact and Find or Create Contact. Zapier notes each resource can hold up to 10 attachments. For safe automation, put a Find step before Create Bill so a bill that already exists is sent to review instead of being created again.

Can n8n attach the PDF to a Xero bill?

Not with the Xero node alone. n8n's Xero node covers contacts and invoices with create, get, get all and update operations, and its documentation suggests the HTTP Request node, using your existing Xero credential, for anything the node does not cover. We create the bill with the node, then upload the original PDF to that bill with an HTTP Request call.

Should an automated bill go in as a draft or awaiting approval?

Draft or awaiting approval, almost always. Xero's API accepts DRAFT, SUBMITTED and AUTHORISED among its statuses, and a bill created as AUTHORISED skips your approval step. We create bills as DRAFT or SUBMITTED, let your approver release them, and only discuss auto-approval for small, regular bills from known suppliers that pass every check.

Can the workflow handle supplier credit notes?

Yes. Xero's API has a separate type for supplier credit notes, ACCPAYCREDIT, so the classify step sends credit notes down their own branch instead of posting them as negative bills. Statements and payment reminders are classified too and filed without posting, because they repeat amounts that are already in Xero.

How many bills a day can a Xero workflow post?

Xero allows 60 calls a minute and 5,000 a day per organisation, and about 1,000 a day on the free Starter developer plan. At our estimate of three calls per bill (contact lookup, create, attach), that is about 1,650 bills a day on the higher tiers and about 330 on Starter, less whatever other connected apps use.

Who owns the workflow and the Xero connection?

You do. The Xero organisation, the developer app or connection, the automation platform account and the extraction service all sit in accounts under your name, and we work with access you can remove. Our FAQ on who owns automations and data explains how to check each part.

How long does a Xero bill automation take to build?

A small build, such as intake, extraction with checks and posting draft bills to Xero, typically takes days once we have access to the inbox and Xero. Most delays come from waiting for that access or for sample bills. Our FAQ on how long an automation build takes covers what changes the timeline, or you can contact us by email first.

Sources and further reading

Want supplier bills in Xero without retyping them?

Book a free 30-minute call. Bring 20 real bills, including the messy ones, and we tell you whether Xero capture is enough or send a fixed-price plan for a workflow.

Get in touch

Tell us what you want to automate or build.

Tell us a little about your business and what is not working, then pick a time for a free 30-minute call. No waiting for a reply.

  • Free 30-minute strategy call, no obligation
  • Written plan with scope and price before any build
  • Six months of maintenance included on every build
Alpit Patel
Alpit PatelFounder, Autoesta · HighLevel Certified Admin
  1. Details
  2. Time
  3. Confirmed

Takes under a minute. Free, no obligation, no spam. Privacy policy

Book a Free Strategy Call