Xero Invoice API Limits: How Many Invoices Can You Sync Per Day?

Recently, during an Xero integration consulting call, a client asked an interesting question:

Client’s Query

How many invoices can I sync per day in Xero?

A client wanted to sync a bulk of invoices from their eCommerce order management system.

He asked me,

“How many invoices can I sync per day in Xero?”

I replied, “There is a limit of 5,000 API calls per day, and it depends.”

The client then asked,

“What do you mean by ‘it depends’? At least 5,000 invoices can be pushed, am I right?”

Again, I said, “It depends.”

Let’s understand by taking an example, on what things it depends?

Before building any integration that pushes invoices into Xero, it’s important to understand how Xero API rate limits work.

These limits control how many requests an application can send to Xero’s servers within a given timeframe.

The purpose of these limits is to maintain platform stability and ensure fair usage across all integrations.

If your integration exceeds these limits, Xero returns a 429 – Too Many Requests error, and your application must pause before sending further requests.

How Many API calls Are Required to Sync One Invoice in Xero?

Xero API workflow showing contact creation, line items, invoice generation and payment sync with Xero cloud accounting platform

We consider the following general actions required for syncing an invoice:

  1. Checking/Creating a Contact: 1 API call.
  2. Checking/Creating Items (if required): 1 API call per item.
  3. Creating/Updating the Invoice: 1 API call.
  4. Applying Payments (optional): 1 API call per payment.

Example Scenario:

  • Assumptions: Each invoice involves:
    • 👤 1 contact
    • 🛒 3 line items
    • 📝 1 invoice
    • 💵 1 payment
  • Total API Calls per Invoice
    • 1 (Contact) + 3 (Items) + 1 (Invoice) + 1 (Payment) = 6 API calls per invoice

Statistics for Invoice Synchronization

Number of InvoicesAPI Calls RequiredPossible? (Daily Limit: 5,000)
16✅ Yes
1060✅ Yes
100600✅ Yes
1,0006,000❌ No (Exceeds Daily Limit)
5,00030,000❌ No

Key Insights of Xero API Limit:

  1. Invoices Sync Limit: You can sync up to 833 invoices per day without exceeding the 5,000 API call limit, assuming each invoice requires 6 API calls.
    Xero api limit- how to calculate
  2. Handling Larger Volumes
    • Batch invoices where possible.
    • Distribute synchronization over multiple days.
    • Use Xero’s Webhooks for real-time updates instead of polling.
  3. Limitations: Synchronizing 800 or more invoices in a single day is not possible due to API limits.

How to Overcome the 800 Invoices Limit in Xero?

To create more than 800 invoices per day in Xero while staying within API limits, you can:

  • Batch Multiple Invoices in a Single API Call: Use the POST or PUT Invoices endpoint to include up to 50 invoices per request (within the 3.5MB request size limit) (Limits FAQs — Xero Developer, 2023)

For example:

  • To sync 800 invoices, you would need only 20 API calls. This approach allows efficient scaling without exceeding daily limits.

Like Xero, would you like to know about API limits for top accounting software? Read: A SaaS Leader’s Guide to API Rate Limits in Top Accounting Platforms

Conclusion

Syncing invoices in bulk with Xero requires understanding and managing its API limitations effectively.

While the daily Xero API call limit of 5,000 may seem restrictive, strategic approaches like batching invoices (up to 50 per API call), using bulk endpoints, and

Distributing synchronization over multiple days can help overcome this challenge.

For businesses with larger volumes, optimizing the integration process and leveraging Xero’s advanced features like custom Xero invoice handling and webhooks greatly simplifies operations.

With the right strategy and tools, scaling your invoice synchronization in Xero becomes a manageable task.

FAQ

What are the API rate limits for Xero?
Xero enforces API rate limits to maintain platform stability. Each connected organization can make up to 60 API requests per minute and 5000 API requests per day, with a maximum of 5 concurrent requests at any time. If these limits are exceeded, the API returns a 429 Too Many Requests error until the request window resets.
How many invoices can be synced per day using the Xero API?
The number of invoices that can be synced depends on how many API calls are required per invoice. In most integrations, syncing a single invoice involves around 5–6 API calls. Based on the 5000 daily request limit, an integration can typically sync around 800–900 invoices per day per Xero organization.
What happens when the Xero API rate limit is exceeded?
When an application exceeds the allowed API request limit, Xero returns a 429 Too Many Requests response. This indicates that the integration has reached the request threshold and must pause before sending new requests. Developers typically implement retry logic with delays or exponential backoff to handle these situations.
Do Xero API limits apply per application or per organization?
Xero API limits apply per connected organization (tenant) rather than per application. This means that if an integration connects to multiple Xero organizations, each organization has its own separate API request limits.
Why does syncing invoices require multiple API calls?
Invoice synchronization often requires multiple operations within the Xero API. These may include creating or updating contacts, adding line items, attaching payments, updating invoice status, and retrieving confirmation responses. Because of these steps, a single invoice sync can involve several API requests instead of just one.
How can developers avoid hitting Xero API limits?
Developers can avoid API limits by using strategies such as queue-based processing, batching requests, caching frequently used data, and syncing only incremental updates instead of full datasets. These techniques help distribute API requests over time and prevent request spikes.
Are Xero API limits different for invoice endpoints?
No, the same API limits apply across most Xero API endpoints, including invoices, contacts, payments, and journals. The limits are enforced at the API request level, not per endpoint. However, integrations that heavily use invoice endpoints can reach the daily request threshold more quickly.
Can high-volume businesses sync more invoices with Xero?
High-volume businesses can scale their integrations by implementing message queues, scheduled processing, and batch synchronization strategies. These architectural approaches allow integrations to handle large invoice volumes while staying within Xero’s API rate limits.


Article by

Chintan Prajapati

Chintan Prajapati, a seasoned computer engineer with over 20 years in the software industry, is the Founder and CEO of Satva Solutions. His expertise lies in Accounting & ERP Integrations, RPA, and developing technology solutions around leading ERP and accounting software, focusing on using Responsible AI and ML in fintech solutions. Chintan holds a BE in Computer Engineering and is a Microsoft Certified Professional, Microsoft Certified Technology Specialist, Certified Azure Solution Developer, Certified Intuit Developer, Certified QuickBooks ProAdvisor and Xero Developer.Throughout his career, Chintan has significantly impacted the accounting industry by consulting and delivering integrations and automation solutions that have saved thousands of man-hours. He aims to provide readers with insightful, practical advice on leveraging technology for business efficiency.Outside of his professional work, Chintan enjoys trekking and bird-watching. Guided by the philosophy, "Deliver the highest value to clients". Chintan continues to drive innovation and excellence in digital transformation strategies from his base in Ahmedabad, India.