Convert a Vietnamese or Thai Bank Statement to Excel

Vietnamese and Thai bank statement conversion: large-denomination currencies, and Buddhist era years that have to be converted to Gregorian.

Vietnamese and Thai statements each carry a distinctive trap, and they are different traps: currency magnitude in Vietnam, calendar era in Thailand.

Vietnamese dong amounts are very large

A modest monthly salary in Vietnam runs to eight or nine digits. Amounts print with period thousands separators and usually no decimal fraction: 15.000.000 for fifteen million dong.

Two things can go wrong. A parser treating the period as a decimal point reads this as fifteen. A parser rejecting numbers above some plausibility threshold rejects it entirely.

Thai Buddhist era years

Thai statements frequently use Buddhist era years, which run 543 ahead of the Gregorian calendar. A statement dated 2569 is 2026.

Read as Gregorian, every transaction lands five centuries in the future. It is an obvious error once you see it, and completely invisible if you do not check the dates.

This converter does not convert Buddhist era years: the spreadsheet keeps 2569 as 2569, exactly as printed. Subtract 543 from the year before importing the file anywhere, and before making a ledger file from it with CSV to QBO.

PrintedActuallyIf misread
2569 (BE)2026Year 2569 — 543 years out
15.000.000 VND15 million dong15, if the period is read as a decimal
฿1,234.561,234.56 bahtFine — Thai baht uses the decimal point

Verifying

The date sanity check is the important one here: confirm every converted date falls inside the statement period printed on the document. Both a Buddhist era misreading and a format confusion fail that test immediately.

Then the balance chain, which catches the currency magnitude errors — a factor-of-1000 misreading breaks it on the first row.

What the export contains

In the fileWhat you get
The bank's own columnsEvery heading as printed, in its own script, in the same order
DatesExactly as printed, Buddhist era years included. Nothing is converted
DescriptionsIn full, original script preserved, with wrapped lines joined into one cell
AmountsExactly as printed — 15.000.000 stays 15.000.000 — each in the column the bank printed it in
A Completeness sheetWhat the rows could be checked against, and the result

QR payment rows

Both countries have high QR payment adoption — PromptPay in Thailand, VietQR in Vietnam — and those transactions dominate a typical personal statement.

The descriptors carry the counterparty and a reference, and they are numerous: a busy month can run to several hundred rows. That volume is what makes verification essential rather than optional, because manual review stops being practical.

Frequently asked questions

Are Buddhist era dates converted?

No. They are kept exactly as printed. Subtract 543 from the year to get the Gregorian one before importing the file anywhere.

My statement has hundreds of QR payment rows. Is that a problem?

No, but it means verification matters more — at that volume you cannot review the output manually, so the arithmetic check is your only real assurance.

Which banks are supported?

The reader works from the table on the page rather than a list of banks, so a statement from any Vietnamese or Thai bank is read the same way. The Completeness sheet tells you whether yours came out right.

Related posts

Convert a statement now

Bank Statement PDF to Excel, or see every format. More in the guides.