Setting up bank feeds in Xero, and which route your account gets
Start in Xero: go to Accounting, then Bank accounts, click Add bank account and type the bank's name. What happens next depends on the route your bank uses. The big Australian banks mostly want the connection started from their own online banking, open banking connections are started in Xero and handed to the bank to authorise, and smaller institutions connect through an aggregator. Eligibility is decided per account rather than per bank, so an account the bank doesn't list has no route at all and nothing in the connect flow will produce one.
Three routes, and the bank decides which one you get
Xero's connect flow isn't one flow, it's three, and the bank decides which one applies to your account. The route decides where you start, how long activation takes and what you have to keep doing afterwards, which is why so many setup guides read as though the screens have moved: they describe one route as if it were the whole picture, and you find out halfway through that yours works differently.
- A direct feed the bank starts. You set it up inside your online banking rather than in Xero, nominating Xero as the recipient, and the bank begins sending. It's the usual pattern at the big Australian banks, so NAB, CBA, ANZ and Westpac setups mostly begin on the bank's side.
- An open banking connection Xero starts. You search for the bank in Xero, Xero hands you to the bank's own login to authorise the connection, and you come back. It's the usual UK route, and it's the one that expires on a schedule.
- An aggregator connection, used where Xero has no direct arrangement with the institution. It looks much the same from inside Xero, and it depends on a third party keeping the link to the bank alive on your behalf.
Two minutes in the Add bank account screen tells you which one you're in, because the bank either appears with a connect option, appears with a Manual upload label, or doesn't appear at all. Those three answers are worth more than any list of supported banks you'll find online, since coverage changes and the search box is current.
Where feeds come from, what the connect flow asks for, and Xero's own fallback for the accounts it can't reach: upload the statements yourself.
What Xero counts as a feed and which accounts can hold one. Read the eligibility wording closely, because it's written per account type rather than per bank.
The route you're left with when none of the three connect, its accepted formats and its column mapping step. A PDF isn't one of the formats.
Direct feeds: you start at the bank, not in Xero
If you're setting up a feed for an Australian business account, you'll spend most of the job logged into the bank rather than logged into Xero. The major banks run their own feed application inside online banking, you nominate Xero from there, and the bank decides which of your accounts are offered at all. Some want you registered in Xero before you start on their side, so getting the order backwards means reaching their form and finding it wants a registration you haven't made yet.
- Add the account in Xero first where the bank asks for that, because several do, and their form expects a registration that already exists.
- Log into the bank's online banking as someone with the rights to authorise data sharing, find the accounting software or feeds section, and nominate Xero.
- Select the accounts you want fed. Only the eligible ones are offered, and an account that isn't on the bank's list simply won't appear.
- Wait for activation, which generally runs to a business day or two rather than minutes, and takes longer for a request lodged over a weekend.
- Back in Xero, check the account is receiving lines and note the date of the first one, because that date is where your feed history starts.
Activation lag looks exactly like a failed setup, so resist the urge to submit the request again. A duplicate request usually means a second connection to untangle rather than a faster feed.
Open banking and aggregator feeds start inside Xero
The UK route runs the other way round, so you search for the bank in Xero, Xero sends you to your own banking app or online banking to approve the connection, and the feed begins once you're back. It's usually the quickest of the three to set up, and it's the only one with maintenance built into it, because UK open banking consent expires every ninety days and has to be reauthorised. That's a regulatory requirement rather than a fault, so nothing anywhere will flag it as an incident, and the feed just goes quiet on a date nobody wrote down.
Aggregator connections behave differently again, and nothing in Xero's interface announces that you're on one. They can be held up by something waiting at the bank rather than anything happening at Xero, like a pending set of terms, an unread security alert, or a change to the login the connection hasn't caught up with, so if a setup stalls without producing an error, logging into the bank directly and clearing whatever is sitting there is usually the unlock.
- About bank feedsHow often feed transactions arrive once a connection is live, roughly every twelve hours, and how to refresh a feed by hand instead of waiting.
- Check if your bank feed is lateWhere you confirm a new connection is actually delivering: Accounting, then Bank accounts, the menu icon next to the account, then View Status Updates.
- Disruptions to bank feedsThe feed outages Xero currently knows about, by region. Worth a look before you set anything up, because authorising into an outage costs you the time twice.
Permissions at the bank stall more setups than anything technical
Plenty of feed setups don't fail, they stall on access, and it's usually the bookkeeper who finds out. The bank is the party agreeing to share the data, so the authorisation has to come from whoever holds administrator rights on the account, and an external accountant with view-only access can't complete the flow at all. The request goes to a director, the director is busy, and the account sits unfed for a month while the books wait. Several banks also keep a paper authority for customers without online banking, which adds a postal round trip to the same job.
Raise it with the client in week one rather than discovering it in week three. If you're doing the books for someone else, the first question isn't which bank they're with, it's who holds administrator access there and how quickly they answer email, because the bank's permission model is the constraint and nothing you do inside Xero moves it.
Settle the access question before you promise a go-live date, because a feed waiting on a signature isn't a feed, and the reconciliation still has to happen while everyone waits.
The accounts with no route at all
Eligibility is decided per account rather than per bank, which is why one account feeds perfectly while another at the same institution has nothing to connect. Each bank publishes its own eligible list, and it's worth reading before you lose a fortnight to it, because personal accounts doing business duty, cards issued under a primary card, term deposits, finance facilities and foreign currency accounts all turn up on one exclusion list or another. If the account type isn't on the list there's no feed to apply for, so reapplying and waiting change nothing.
For those accounts, Xero's documented answer is the manual import: export the statement, then upload it as CSV, OFX, QBO, QFX or QIF. A PDF can't be imported and has to be converted first. The import itself takes a minute, and it never tells you the export was complete, never checks the closing balance against the bank's, and has no opinion on whether the amounts are the right way round. Plenty of bank exports split money in and money out across separate debit and credit columns, and folding those into the single signed column Xero wants is one wrong decision in a spreadsheet away from inverting a whole statement.
- Four ways to get your banking data into XeroXero on the manual route and the file types it accepts, which is the fallback for every account none of the three feed routes covers.
- Find and remove duplicate bank statement linesXero's cleanup path for the duplicates a new feed creates over a period somebody had already imported by hand, and what it compares to decide a line is one.
Setting it up once so it doesn't come undone
Connect every account that will connect, because a native feed you never have to think about is the best outcome available. What's left afterwards is the part worth planning for, and it's usually bigger than people expect: the accounts the bank won't feed, the ones waiting on administrator rights, and the stretch of history that falls before the day the new feed switched on. A feed delivers forward from activation, so whatever sat in the account before that date stays missing until somebody puts it there.
StatementClear closes that part. You upload the statement the bank already gives you, as PDF, CSV or Excel, map the columns once per account and it remembers the mapping, and the lines are checked before anything is sent: deduplicated against what's already in the Xero account, recomputed against the statement's own running balance, and checked for inverted signs. They then post into Xero through the Bank Feeds API as feed lines rather than as an imported file, so the account is fed from then on and next month's statement continues the same feed instead of starting another import.
The dedupe is what makes this safe alongside a native feed rather than instead of one, because posting over a period the bank's feed partly covered is exactly what produces a duplicate hunt, and that's the situation every time a feed is set up late, restored after an outage, or pointed at an account somebody had been importing by hand.
- Bank Feeds API overviewThe interface a posted feed line arrives through, and why a feed line isn't the same thing as an imported one.
- Feed connectionsHow a feed connection binds to a Xero bank account, which is the object a posted statement is delivered against.
Connect every account that will connect, then feed the ones that won't.
StatementClear posts the statements you already export into Xero as live bank feed lines, deduped and balance-checked before anything reaches the ledger.