How Singapore accounting firms process DBS, OCBC and UOB bank statements automatically (2026)

DBS, OCBC and UOB statements in different formats, feeds that miss history, backlogs before Form C-S. How Singapore firms extract, check and import bank statements in 2026.

Form C-S, C-S (Lite) and Form C for YA 2026 are due on 30 November 2026. For most Singapore firms, that makes October and November the months when late bank statements finally get cleared. The slow part is rarely the tax computation. It is the stack of DBS, OCBC and UOB statements that still has to become clean ledger lines.

Quick answer: Singapore firms automate bank statements in two layers. A direct bank feed into Xero covers new transactions for connected accounts. The feed misses older months, new clients and unconnected foreign currency accounts. For those, firms run the PDF through an extraction tool that reads every line and checks the balances. The result goes to Xero as statement lines, or to any ledger as a CSV. Reconciliation still happens in your ledger.

We make tofu, so weigh our view with that in mind. The bank details below come from DBS, OCBC, UOB, Xero and IRAS pages, linked in the sources.

Why do bank statements pile up before 30 November?

IRAS says it plainly: "The annual filing due date for Form C-S/ Form C-S (Lite)/ Form C is 30 Nov".

Firms with a stack of December year end clients feel that date in September. Those accounts need closing before anyone can prepare the return.

Here is the pattern we keep hearing from Singapore firms this season. A client arrives late with a year of statements. Another has three bank accounts but only one is on a feed. A third sends a folder of PDFs covering two years. Each one is a small job. Together they fill October.

DateWhat it means for bank work
Now to OctoberCollect missing statements while the bank still shows them online
October to mid NovemberConvert, check and import backlog statements, then reconcile
30 November 2026Form C-S, C-S (Lite) and Form C due for YA 2026 (IRAS)

What formats do DBS, OCBC and UOB statements come in?

Each bank gives you something different. That is why one manual process never fits all three.

BankOfficial statementTransaction exportHow far back onlineXero connection
DBS (IDEAL)PDF eStatementExcel (.xls) or PDF"Up to 7 years", though DBS also says "the available statements are up to August 2020"Direct feed, set up through DBS IDEAL
OCBC (Velocity)PDF e-StatementNot stated on OCBC's e-Statements pageUp to 14 months for business accounts, "subject to availability"Direct feed for business current and savings accounts, including foreign currency
UOB (Infinity)Account statementPDF, CSV, spreadsheet or fixed lengthAccount activity for the past 12 monthsFeed set up through a UOB registration form

A few details matter more than they look.

  • DBS exports transaction history as .xls or PDF. Neither drops straight into Xero's bank statement import without reshaping.
  • OCBC keeps business e-Statements online for up to 14 months. If a backlog goes back further, the client may have to ask the bank for older copies. Chase those first.
  • UOB notes that "the layout of the downloaded statement differs from the physical account statement." The export and the official PDF will not line up column for column. UOB also says first-time Infinity users can only see the past 2 months of activity.

If a client has a Xero bank feed, why do you still need statements?

Bank feeds are the best source for new transactions. OCBC says business transactions from the previous day "will appear in Xero the next morning." DBS announced its API feed to Xero in 2017. UOB runs its feed through an online registration form.

The catch is history. Xero's Singapore page offers "the option to pull historical transaction data from the past 90 days or up to 2 years, depending on the bank". Anything older than that, or any account nobody connected, still has to come from statements.

In practice that covers:

  • New clients taken on to file YA 2026, whose books start in January 2025, possibly before the history their feed can pull
  • Foreign currency or secondary accounts that were never added to the feed
  • Feeds that broke for a few months and left a gap
  • Clients on accounting software with no feed for their bank at all

So the real question is not feed or statements. It is how fast you can turn the statements into data the feed would have given you.

What goes wrong when you convert statements by hand?

Five problems came up again and again in conversations with firms this month.

Statements that won't balance

Say you type a long statement by hand and the closing balance is out by a few dollars. Now someone has to find the one line that caused it. Often it is a transposed digit or a line typed twice across a page break. The fix takes longer than the typing.

Missing or wrong dates

Statements that cross a year end are the usual trap. A line dated "02 Jan" on a December statement can land in the wrong year. Day and month can also swap when a file moves between Excel settings. Wrong dates break reconciliation and push transactions into the wrong period.

Multi-currency accounts

A single multi-currency statement can hold several currency sections one after another. Each section needs its own bank account in the ledger. Typed as one list, the balances will never agree.

CSVs that won't import

Bank exports rarely match what the ledger expects. Some carry several header lines above the data. Some split debits and credits into separate columns. Others put the running balance where the importer wants an amount. Somebody ends up cleaning each file in Excel before it will load.

Backlogs of hundreds of statements

Say one client has 24 months across three accounts. That is 72 statements. Five such clients and your team spends November typing instead of reviewing.

How does an automated workflow look for Singapore firms?

The workflow is the same whichever bank issued the statement.

  1. Collect. Get the official PDFs from the client. For a large backlog, ask for the full range in one go, including every foreign currency account.
  2. Extract. Upload the PDFs. The tool reads every transaction line, including multi-page tables, and splits multi-account or multi-currency statements into separate sections.
  3. Check. Compare opening balance, closing balance, debit and credit totals, and the running balance line by line. Flag the first row where the numbers stop agreeing, and check every date falls inside the statement period.
  4. Code. Suggest an account, tax rate and tracking category for each line, then review the suggestions.
  5. Send. Publish to Xero as statement lines, or export a file your ledger can import.
  6. Reconcile. Match the lines in Xero or QuickBooks as you would for feed data.

Step 3 is the one that saves the most time. A balance check tells you a statement is complete before it reaches the ledger, not three weeks later during review. For a deeper look at the extraction step, see our guide on converting multi-page PDF bank statements to Excel or CSV.

Can you post to bank feeds, or only export CSV? And do you reconcile?

These were the two questions firms asked most, so here are straight answers for tofu. Other tools differ, and our comparison of bank statement extraction tools covers them.

LedgerHow statement data gets inNotes
XeroPublish directly to the Xero bank account as statement linesWaitlisted; tofu support enables it. Single-account statements only, dated within the past 12 months. Each statement publishes once. Not available for the Demo Company, inactive organisations or Ledger editions
XeroExport a Xero CSV and import it under bank accountsThe route for statements older than 12 months and for multi-account statements
QuickBooks OnlineExport with the QBO Bank Statement template, then import under Settings, Import data, Bank dataManual import step in QuickBooks Online
Other ledgersCSV or Excel export from 40+ templatesCovers Zoho Books, Sage, NetSuite and others

On reconciliation: tofu does not reconcile. It gets the statement lines into Xero or QuickBooks, checked and coded, and your team reconciles there as usual. That split is deliberate. The ledger is where your matching rules, invoices and audit trail already live.

Note the 12 month limit on direct publishing. For a backlog older than that, or a multi-account statement, the Xero CSV is the route.

Where tofu fits

tofu is the capture and data-entry layer, not a ledger. For bank statements it reads PDFs from DBS, OCBC, UOB or any other bank, then checks the balances and suggests coding for each line. The result goes to Xero, QuickBooks Online or a CSV for other software. It works on the same PDFs clients already send, so a new client does not need a feed before you can start.

It does not replace the bank feed for day-to-day transactions, and it does not reconcile.

WLP, a Singapore Xero Platinum Partner, cut bank statement processing from 15 min to 2 min per page vs manual Excel entry. Co Founder Li Han Tan put the benefit this way:

"It is even faster than what we previously used. For my consultants who are trying to extract transaction volumes to quote new clients, speed is key. Trying to get back to your clients fast, that helps a lot."

Li Han Tan, Co Founder, WLP (read the WLP case study)

If you have a backlog to clear before 30 November, run a few of your worst statements through it first. Start a free trial or see pricing. For how this fits with the rest of your stack, see bookkeeping automation software for Singapore firms and the tofu Xero integration.

Frequently asked questions

Can I get a Xero bank feed for DBS, OCBC and UOB business accounts?

Yes, all three banks offer a feed into Xero for business accounts. OCBC says business current and savings accounts are eligible, including foreign currency accounts. DBS connects through IDEAL, and UOB uses a registration form. Check with the bank or Xero Central for the specific account type, since eligibility can vary.

How far back can a Xero bank feed import transactions?

Xero's Singapore page says you can pull history from the past 90 days or up to 2 years, depending on the bank. Anything before that needs statements. If you take on a client in October to file YA 2026, plan on statements for at least part of the year.

How long do OCBC, DBS and UOB keep business statements online?

OCBC shows business e-Statements for up to 14 months, subject to availability. DBS says IDEAL shows "up to 7 years" of account statements. The same page adds that "the available statements are up to August 2020", so check IDEAL for older months. UOB Infinity displays account activity for the past 12 months. Download what you need early, before older months drop off.

Why won't my bank CSV import into Xero?

Bank exports often carry extra header lines, split debit and credit columns, or a layout that differs from the official statement. Xero's importer expects a specific column set. You can clean the file by hand, or extract from the PDF straight into a Xero CSV template.

Does tofu reconcile bank transactions?

No. tofu extracts, checks and codes the statement lines, then publishes them to Xero or exports a file for QuickBooks Online and other ledgers. Your team reconciles inside the ledger as usual.

How do I handle a statement that doesn't balance?

Compare the running balance line by line from the opening balance. The first row where your calculated balance differs from the printed balance is where the error starts. With per-line balance validation on, tofu's review screen marks that row for you. You fix one line instead of rechecking the whole statement.

What about multi-currency accounts?

Treat each currency as its own bank account in the ledger. tofu gives each account and currency on a statement its own section. Multi-account statements export as one file per account.

Is this different from how Malaysian firms handle bank statements?

The workflow is the same, but the feed picture is different. Singapore's three big banks all offer Xero feeds, so the gap is mostly history and unconnected accounts. Our Malaysia bank statement guide covers the local picture there.

Sources

Checked against IRAS, DBS, OCBC, UOB, Xero and tofu Help pages in September 2026.

Latest blog posts

Stay up to date on new Tofu features, automation workflows, and the emerging tech shaping the future of bookkeeping.
View all
Guides

How Singapore accounting firms process DBS, OCBC and UOB bank statements automatically (2026)

DBS, OCBC and UOB statements in different formats, feeds that miss history, backlogs before Form C-S. How Singapore firms extract, check and import bank statements in 2026.
Saman Herath
September 27, 2026
Tool Comparisons

How to switch from Dext, AutoEntry or Apron without losing credits (2026)

Leaving Dext, AutoEntry, Apron or Hubdoc? Here's a 90, 60, 30 day plan to use up paid credits, export your archive, move clients in batches and keep duplicate bills out of Xero.
Saman Herath
September 27, 2026
Guides

Best Making Tax Digital Software for Accounting Firms (2026 Guide)

MTD for Income Tax is live. Compare the HMRC-listed software UK practices use, with quarterly deadlines, the 2026 to 2027 penalty grace year, agent set-up steps, and where document capture fits.
Jay Sen Lon
September 27, 2026

Start Saving Hours Each Week With AI Bookkeeping

Discover how Tofu automates bookkeeping workflows from invoice to ledger. Schedule your demo today.