Reconcile via the API
Be able to reconcile bank statement lines via the API.
Hi everyone,
Firstly, apologies – it’s obvious from the continuing comments that we declined this request too hastily and without the explanation it deserved.
We know that reconciling would be a valuable API feature, but reconciling requires fine grained access to bank statement data and unfortunately we’re not able to share that data via the API for commercial reasons.
At Xero we’re passionate about having an open API and providing small businesses with open access to their data. Unfortunately, many of the partners we rely on for statement data don’t share the same ideals.
Hopefully change is coming in the form of open banking. However, it will be a long time before we can openly share statement data via the API and provide a decent reconciliation experience to third-party apps. For that reason we will unfortunately leave this request as ‘declined’.
For the immediate future, we’re busy doing some really cool stuff to improve the in-product experience and automating bank rec as much as we can. We already have bank rules, auto-match, suggestions and cash coding but there’s lots more coming this year.
Again, we apologies for our lack of transparency on this thread. We do value the feedback on UserVoice and have shipped features with over 3000 votes in the last 12 months. We definitely dropped the ball on this one though.
Cheers,
Adam
-
Lohitya Sethuraman commented
YES
-
Ziegfried Kritzinger commented
A big YES vote from me.
-
Mannan Mackie commented
+1
The year is now 2025, response is over 7 years ago. I understand that maybe there is some redtape around exposing bank transactions directly via your API, but wrapping it in a reconcilliation suggestion object or something would make a lot of sense. -
Jacob G commented
What would be very helpful is a way for the API (and even the web site too) to allow the user to pre-batch what is expected to go together. You don't need bank statements for that. For example, if I expect on Sept-22-2025 for my bank to have a transaction for Stripe transfer containing my sales and fees for Sept-20-2025, then I'd like Xero API to let me automate creating a batch of multiple invoices and bills for those things, then I can easily just check one box to match the transaction for that day. Again, you don't need any bank statement info for the API to do that. I already know what to expect, and this allows avoid checking dozens of boxes just to match a daily transaction.
-
Alex Brown
commented
Every day, Xero finds new ways to disappoint me.
Actively looking to migrate away from this antiquated platform now -
Erfan Mostafiz
commented
This is ridiculous. Wanted to automatically reconcile statements using AI Agent, because reconciliation everyday takes a big chunk of my time. Without Bank Statements, automatic reconciliation is not possible. The excuse you gave regarding sharing access to bank statement data is ridiculous. This is our account, and we should get to decide how we want to use it.
-
Syahnur Nizam commented
so when are we going to see this implemented?
-
Michael
commented
+1, although it looks like this will never happen...
-
Kavindu Fernando
commented
+1
Please provide -
Sandun Perera
commented
We are developing an internal system to sync data from our own Xero account, so we need an API to import Bank transactions, Bank Statements, Reconciliation, etc. from the Xero API into our system. But there is no endpoint as per the documentation. PLEASE IMPLEMENT THE API AS SOON AS POSSIBLE.
-
Nathan A commented
The excuse of giving access to bank statements is ridiculous. It's our data. This is absolutely necessary for any useful automation, its embarrassing that this doesn't exist.
-
Karim K commented
+1
Importing the same CSV by API as I already do by UI should be a basic human right! I have to import dozens on a regular basis. -
Richard ODwyer commented
This should be implemented immediately, enough excuses.
-
Eldre Lubbe commented
With the industry of AI automation rising, this is becoming a more and more popular request from clients who use your platform particularly bookkeepers and accountants who I'm sure would get a mental equivalent of repetitive strain injury from the amount of "ok" they have to click through.
I have had conversations with a few clients regarding this issue and a few of them have considered using a different platform because of this issue, i do not know if other platforms like quickbooks have this same issue considering im not an accountant or bookkeeper.
I believe adding this as a function as part of xero or building out an api so an automation can be built out will be incredibly valuable to your customers
-
James Taylor commented
Can we not just have the ability to auto reconcile transactions which match rules we have already set up in Xero? All I do is mindlessly sit there for hours clicking OK, OK, OK, OK. Why can we not automate this? I don't even need to see the transaction details just allow me to either mark all matched as reconciled or redact some data as you display them in the api? This is a joke
-
Kendall MacMillan commented
+1,
Come on Xero, sort it out
-
Jonathan
commented
I get why you can't do this, but it sucks. It's crazy that it's 13 years later and there isn't a better solution.
For others coming here, Xero's problem is that they are dependent on getting bank data from 3rd party data sources (typically not the bank themselves, someone like Yodlee or Plaid), and those contracts disallow allowing access to the data via API. Logically, this makes sense from the 3rd party's point of view. They make their money by selling access to the data. If they allow Xero to share this data via API, then someone could set up a Xero account, set up multiple feeds (say, for their own customers), then use the API to access the data without paying the 3rd party. It seems to me there should be a way around this though - something in the Xero user contract that says you won't do this blah blah.
-
Keven Pepin commented
+1, Xero Team, what are you waiting for ?
-
Teresa Simonetti commented
+1
-
Matthew Carter commented
+1