香港會計師事務所專用 · For Hong Kong accounting practices

客多咗,工序少咗

唔使再入數,淨係要覆核

More clients, fewer steps. No more entering figures — only checking them.

Accrobo reads Hong Kong bank statements, invoices and receipts, checks the arithmetic against itself, and hands your clerk a sheet to confirm — not one to retype.

No card. Bring a real statement and check it against the paper.

HSBC 匯豐 · Business Integrated Account01–31 JUL 2026
Source page ← every figure keeps its place → extracted value
HSBC 匯豐PAGE 1 OF 2

商業「綜合理財」戶口結單 · BUSINESS INTEGRATED ACCOUNT

港元儲蓄 HKD SAVINGS  004-123456-838-001

日期 DATE交易詳情 DETAILS結餘 BALANCE
01 JULBALANCE B/F 承上結餘125,480.50
03 JULATM WITHDRAWAL 提款 CENTRAL120,480.50
08 JULINWARD REMITTANCE 匯入款項205,480.50
15 JULCHEQUE 支票 000472193,130.50
22 JULAUTOPAY-OUT 自動轉賬 強積金供款184,730.50
29 JULBANK CHARGES 銀行費用184,350.50
31 JULBALANCE C/F 轉下結餘184,350.50

美元儲蓄 USD SAVINGS  004-123456-838-840

01 JULBALANCE B/F 承上結餘12,000.00
11 JULOUTWARD TT 匯出款項8,749.25
25 JULINTEREST 利息8,753.43

The original stays beside every figure, in the app and in the audit pack.

Balance chain checks out on both ledgers. Nothing needs review.
HKD 港元儲蓄USD 美元儲蓄two accounts, never merged
Details 交易詳情AmountBalance
01/07/2026BALANCE B/F 承上結餘125,480.50
03/07/2026ATM WITHDRAWAL 提款 — CENTRAL BRANCH-5,000.00120,480.50
08/07/2026INWARD REMITTANCE 匯入款項 — REF TT260708HK+85,000.00205,480.50
15/07/2026CHEQUE 支票 000472-12,350.00193,130.50
22/07/2026AUTOPAY-OUT 自動轉賬 — MPF 強積金供款-8,400.00184,730.50
29/07/2026BANK CHARGES 銀行費用-380.00184,350.50
31/07/2026BALANCE C/F 轉下結餘184,350.50

HKD 港元儲蓄

125,480.50 → 184,350.50

USD 美元儲蓄

12,000.00 → 8,753.43

These figures are this product’s own output on the synthetic Hong Kong statement it is tested against, pinned by a bench that runs on every change — so this page cannot advertise output the product no longer produces. It is synthetic, not a real bank’s document. Bring your own and check it against the paper.

We check the arithmetic. We refuse to guess the rest.

Extraction returns figures that are schema-valid and sometimes confidently wrong, with no confidence score attached. So the only honest signal is whether the document’s own numbers agree with each other.

Every document, every time

  • BALANCE_CHAINbalance = previous + deposit − withdrawal
  • BF_CHAINfirst row agrees with the stated b/f 承上結餘
  • CF_MISMATCHstated c/f 轉下結餘 agrees with the last row
  • ITEMS_SUBTOTALΣ(qty × price) = stated subtotal
  • SUBTOTAL_TOTALsubtotal − discount = stated total
  • ITEM_TOTALqty × price − discount = stated line total

A flag is never a correction. Nothing is quietly repaired, and a flag never blocks Save. The CPA signs and may override.

A flag clears when the figure is corrected, not merely edited — the checks re-run on the sheet as it stands.

1 figure needs review

These numbers do not reconcile with each other. Check the highlighted places against the original document — a flag clears once the figure is corrected, not merely edited.

  • Row 5 balance: stated $184,730.50 but arithmetic gives $184,350.50

Wording is the product’s own; the figures are altered from the statement above to show a break.

And when there is nothing to check against

Some statements state no balance anywhere, and on others the only closing figure printed is the table’s own. We do not pass either as verified — the sheet says the chain is unverifiable and names the account. A tool that reports “reconciled” in both cases is telling you nothing, twice.

No accuracy percentage on this page

Every competitor quotes one, and every practice that has cleaned up after automation knows what it is worth. You sign the accounts. What you need from us is to be told which figures we could not stand behind.

Three ways a month goes wrong quietly

Not hypotheticals. Each of these is a specific failure we measured, and each one has a test that fails the build if it comes back.

Two ledgers stacked on one page

An HSBC business account prints up to eleven foreign currencies and HKD in one document, each with its own opening and closing balance. Generic converters flatten them into a single transaction stream and the per-currency balances are gone. Ours stay separate accounts — the bench fails if they ever merge.

繁體 that comes back 简体

承上結餘, 匯入款項, 自動轉賬, 銀行費用 — as the bank printed them. A test fails the build if a narrative returns Simplified, mojibake, or English with the Chinese half dropped. It is one round trip from a clean statement to an audit file nobody can tie back.

A receipt photographed on an iPhone

In High Efficiency mode a phone writes HEIC. Over thirty runs of one receipt the total was right every time as JPEG, and came back a thousand times too small in nine runs as HEIC, silently. So we refuse HEIC at upload and name the setting that changes it, instead of reading it wrong.

A folder in. A file Xero will actually read.

A month of documents is not one file at a time. Drop the whole folder, watch each file report its own status, then confirm them one by one — the confirming is where the clerk’s judgement belongs, and it is the only part we do not try to take.

  • Twenty files without babysitting. Per-file status while they run; nothing is confirmed on your behalf.
  • Xero’s own columns, not ours. No remapping step between the export and the import.
  • PDF, PNG, JPEG and WEBP, up to 32MB each. A thirty-page scanned statement goes straight up, not through a size cap.
bank-statement-jul-2026.csvXero statement import
DateDescriptionAmount
2026-07-03ATM WITHDRAWAL 提款-5000.00
2026-07-08INWARD REMITTANCE 匯入款項85000.00
2026-07-29BANK CHARGES 銀行費用-380.00

One signed Amount, because that is the column Xero maps without being asked. Rows come out in the order you reviewed them.

Invoices export with

QuantityUnitAmountDiscountCurrency

A discount is converted into the shape Xero expects. A currency the document never names comes out as unknown rather than a guessed HKD.

You are handing us a client’s bank statements

That decision gets made here, before the upload page, so here is the position in full rather than a link to a policy.

Documents and the figures read from them are kept until you delete them — deleting removes the original file, the extracted figures and the cached copy. There is no automatic expiry.

Rendered from the same line the app itself shows, so what you are told before signing up and what you are told inside cannot drift apart.

Delete means three things gone

The source file, the extracted record and the cached copy. The file goes first, so an interrupted delete leaves a visible record with no document behind it — never an invisible document.

We watch the clerk, not the client

Sessions are recorded so we can see where the product gets in the way. The document viewer is excluded from that recording in two independent ways, because forgetting one of them would be silent.

One client, one workspace

Each client is its own organisation with its own documents and its own members. A request carrying the wrong organisation is refused, not filtered.

Pricing

Per month, in HKD. Documents, not seats — a second clerk on the same books costs nothing.

Starter

$300/mo

  • 300 documents a month
  • 1 entity

Standard

$700/mo

  • 1,000 documents a month
  • 5 entities

Pro

Most practices

$1,400/mo

  • 3,000 documents a month
  • 20 entities

More than 3,000 documents a month

A practice with more than a few dozen clients lands here immediately. Tell us the volume and we will price it — an anchor set by a page is the wrong way to start that conversation.

For comparison, the line this replaces is not a software subscription. An accounts clerk in Hong Kong is advertised at HK$15,000–18,000 a month.

Bring one statement. Check it against the paper.

That is the whole evaluation. If the figures do not hold up against your own document, nothing else on this page matters.

No card. 香港會計師事務所專用。