National Bank of Bahrain

How to Convert an NBB Bank Statement to Excel (Bahrain Guide)

By BayanSheet team

There is a specific kind of afternoon in a Manama accounting office: client folders open, an NBR deadline in the near distance, and an NBB statement PDF on screen that holds every number you need and hands over none of them. So it gets retyped, row by row, three decimal places at a time.

This guide covers the whole path — getting the statement out of NBB, the password, converting to Excel or CSV, verifying the numbers survived — plus the detail that defeats most generic converters on a Bahraini statement: the third decimal place.

⚠️ One honest note up front. BayanSheet ships hand-tuned templates for exactly four banks: Emirates NBD, FAB, ADCB and Dubai Islamic Bank. NBB is not one of them. NBB statements are read through layout auto-detection — the engine reads the structure of your PDF, handles Arabic and English narration and Arabic-Indic numerals (٠١٢٣), works out the currency scale, and still runs the full reconciliation check. That works well, and it is not the same claim as a tuned template. So give your first NBB file a one-minute sample review — and if you want it tuned properly, email me a sample and I will tune it for you.

The three-decimal problem, first — because it changes everything else

Most currencies split into 100 minor units. The Bahraini dinar splits into 1,000 fils, so BHD amounts print to three decimals: one dinar and 375 fils appears as 1.375, a balance as 12,480.625.

Almost every PDF-to-Excel tool was built against two-decimal money. Feed it a BHD statement and 1,250.375 becomes 1,250.38. The failure has two halves, and the second is worse:

  1. The exported number is wrong — not catastrophically, just in the last digit, on every row, in a file you are about to classify and file.
  2. The rounding then contaminates the check. Each row drifts by a fraction of a fils, so the tool either reports a difference on a statement that was perfectly correct, or — if its tolerance sits in the wrong scale — absorbs the error and reports a clean pass over figures it just corrupted.

BayanSheet's engine treats decimal places as a question to answer, not an assumption. It reads the currency the statement itself prints — Latin BHD or Arabic د.ب — and scales to thousandths. If the page prints three decimals while the label suggests two, the printed decimals win: over-stating precision is harmless (a two-decimal amount prints 12.300), while under-stating it destroys a digit nothing can recover. The separator gets the same treatment — 1,250 is one thousand two hundred fifty on one statement and one and a quarter dinars on another, so dot-versus-comma is decided from evidence across the whole document, and announced when the page does not settle it.

🔎 Treat this as something to verify, not something to trust. That is what the code intends, and NBB is not a tuned layout. So on your first conversion, open the sheet beside the PDF and check one thing first: does a fils-level amount still carry all three digits? If it does and the reconciliation passes, the scale is right.

Step 1 — Download the statement as a PDF

You want the bank's own PDF, not a screenshot or a printed-then-scanned page. A native PDF carries a real text layer, which is what makes clean extraction possible; a scan is only an image, so BayanSheet refuses it rather than guessing at the pixels — there is no OCR step in this product. To tell which you have, open the PDF and try to select a transaction line: if nothing highlights it is an image, and you need a fresh download from the bank or a digital copy on request.

Channel Rough path Note
NBB internet banking Accounts → the account → Statements The cleanest source for conversion
NBB mobile app Account → Statements / Documents May email the file to your registered address
NBB DigiCorp (corporate) Accounts → Statements & Reports Also issues audit confirmations digitally
Branch / interactive teller Request a printed or emailed statement Ask for the emailed PDF — a scan of a printout is an image and gets refused

Menu labels move between app releases, so treat those paths as the shape rather than the wording, and look for Statements or Documents under the account.

Two habits worth forming. Pull whole statement cycles, not custom date ranges — a full cycle prints its own opening and closing balances, which is what the reconciliation checks against. And if your channel offers a spreadsheet as well as a PDF, take the spreadsheet: no sense converting a file the bank already gave you as a sheet. For a wider regional view, see our Qatar, Kuwait, Oman and Bahrain guide.

Step 2 — Handle the password-protected PDF

If the PDF asks for a password, that is the bank's encryption, not a corrupted download, and no converter can read it until it is unlocked.

Gulf banks encrypt emailed statements so a compromised inbox does not hand over an account history, deriving the password from details the customer already holds. The formula is stated in the covering email — take it from there rather than guessing. Common ingredients across the region:

Ingredient Typical form
Date of birth DDMMYYYY or DDMM
CPR / ID number Full or last digits
Account number Last 4–6 digits
Name First few letters, often uppercase
Mobile number Last digits

Once you can open it, two routes:

  • Convert it as-is. BayanSheet accepts encrypted PDFs and asks for the password locally in your browser. Neither the file nor the password is transmitted anywhere.
  • Save an unlocked copy via Print → Save as PDF. This can rasterise the document, turning selectable text into an image — and an image-only PDF gets refused rather than guessed at — so prefer the original, or take a fresh download from internet banking.

Fuller treatment: converting password-protected bank statements.

🔒 Never email the password in the same thread as the statement. It defeats the entire point of the encryption. If both must reach a colleague, use two channels.

Step 3 — Convert to Excel or CSV

  1. Open BayanSheet in your browser.
  2. Drag the NBB PDF onto the page, or use the file picker.
  3. If the file is encrypted, enter the password when prompted. It stays on your machine.
  4. Auto-detection maps the date, description, debit/withdrawal, credit/deposit and balance columns — Arabic or English — turning Arabic-Indic numerals into values Excel can sum.
  5. The reconciliation check runs automatically and flags any row that does not add up.
  6. Download as Excel (.xlsx) or CSV, whichever your accounting software prefers.

Nothing is uploaded: the parsing runs as JavaScript inside the tab you already have open, which you can prove by switching off your Wi-Fi and converting anyway. General mechanics: how to convert a bank statement to Excel.

Step 4 — Verify the output before it touches your ledger

The costly extraction error is rarely the loud one. It is the silent one: a dropped row, a decimal read wrong, a withdrawal in the deposit column. The table looks immaculate, and the problem surfaces weeks later as a reconciliation that will not close.

The governing equation:

Opening balance + total credits − total debits = closing balance

Check What to look for Why it matters
Three decimals intact A fils-level amount still shows all three digits The Bahrain-specific failure — check this first
Balances reconcile Opening + credits − debits = printed closing (BHD) Catches dropped rows and misread decimals
Row completeness Row count matches the PDF Missing or duplicated transactions
Debit / credit split Two distinct columns, correct signs A merged amount column inverts your net movement
Descriptions intact A wrapped narration stays on one row Split descriptions create phantom transactions
Arabic narration Arabic text and numerals arrived as text and numbers Text amounts will not sum in Excel
Dates correct Day and month not transposed Wrong dates land transactions in the wrong VAT period

BayanSheet runs this reconciliation automatically after every conversion — the closing-balance equation plus a per-row running-balance check — and marks rows that do not balance rather than exporting them quietly. That is arithmetic, not a promise. A converter that hands you rows and advises you to review them carefully has transferred the checking work back to you. Our five-test method for evaluating any converter, this one included: how to verify a bank statement converter.

Step 5 — Bahrain VAT and NBR record-keeping

For a VAT-registered Bahraini business the bank statement is a core supporting document: where declared sales meet receipts, and supplier payments tied to input VAT are traced. The context worth having straight:

  • VAT is charged at 10%, raised from the original 5% with effect from 1 January 2022.
  • Registration thresholds are BHD 37,500 of annual taxable supplies for mandatory registration, BHD 18,750 for voluntary.
  • Record retention was extended from five years to ten by the National Bureau for Revenue in 2024 — a long tail on every statement behind a filed return. It has already changed once, so confirm the current period against the NBR's published VAT General Guide rather than a blog post, including this one.

📁 Ground rule: the Excel file is a working copy, not a replacement for the original record. The NBB PDF remains the document of authority in an NBR review. Keep both: the PDF as the record, the spreadsheet as the tool.

A layout that pays off later: name files consistently (NBB_account-no_2026-Q1.pdf plus a matching .xlsx); keep the balance column after classifying, since it is the fastest way to trace a discrepancy; add a tax-treatment column rather than editing the original narration; and never delete non-VAT rows, so the sheet still ties back to the statement.

Step 6 — Import into Xero, Zoho Books or QuickBooks

Two habits prevent most import failures: standardise the date format across the column before exporting (DD/MM/YYYY is the Gulf convention, and a mismatch is the commonest CSV rejection), and keep debit and credit separate — if the software wants one signed column, derive it with a positive/negative formula.

Then the Bahraini extra step: check how your package stores BHD. Some software formats every currency to two decimals by default, rounding your third digit away at the import boundary even though the CSV was correct. Import one month, open a fils-level transaction, confirm the third digit survived.

  • XeroAccounting → Bank accounts → the account → Import a Statement. See importing into Xero.
  • Zoho BooksBanking → the account → Import Statement; save the mapping for next month.
  • QuickBooks OnlineTransactions → Bank transactions → Upload from file; confirm dates parsed as dates, not text.

Common mistakes

  • Assuming a two-decimal converter is fine for a three-decimal currency.
  • Converting a screenshot instead of the original PDF.
  • Skipping the reconciliation check because the table "looks fine".
  • Keeping only the Excel file and deleting the PDF — a mistake that surfaces in a review, years later.
  • Editing original transaction data instead of adding classification columns.

Conclusion

Converting an NBB statement to Excel removes hours of manual entry, but the value concentrates in two checks: the third decimal place survived, and the balances reconcile. Download the original PDF, unlock it if needed, convert, verify, then import — and keep the PDF as the record of authority for the full retention period.

Try it on a single statement at the converter and compare the output against the PDF in front of you — the first 10 pages are free, no card required, and credits never expire. If the layout needs work, email me a sample and I will tune it; I answer support myself. More guides: the BayanSheet blog.

Frequently asked questions

How do I convert an NBB bank statement PDF to Excel?

Download the statement as a PDF from NBB's internet banking, the NBB mobile app, or NBB DigiCorp if you bank as a corporate customer, remove the password if the file is encrypted, then open the PDF in a converter that reads the transaction table and exports it to Excel or CSV. With BayanSheet the conversion runs inside your browser, so the statement is never uploaded, and the tool reconciles opening balance plus credits minus debits against the printed closing balance before you download anything.

Why does my NBB statement show three decimal places?

Because the Bahraini dinar divides into 1,000 fils, not 100. So a BHD amount is printed to three decimals — 1,250.375 — where an AED or SAR amount would show two. This matters more than it looks: a converter that assumes two decimals turns 1,250.375 into 1,250.38, which is silently wrong data, and the rounding error then reappears as a running-balance drift. Always check the third digit on the first NBB file you convert.

Does BayanSheet have a tuned template for NBB statements?

Not yet. Hand-tuned templates exist for four UAE banks only — Emirates NBD, FAB, ADCB and Dubai Islamic Bank. NBB statements are read through layout auto-detection: the engine identifies the structure of your PDF, maps the date, description, debit, credit and balance columns in Arabic or English, resolves the currency scale, and still runs the full reconciliation check. Give your first NBB file a one-minute sample review against the PDF, and email a sample to support if you want the layout tuned properly.

How long must a Bahraini business keep its bank statements for VAT?

Longer than most people assume. The National Bureau for Revenue extended the general VAT record-retention period from five years to ten in 2024, so statements supporting a filed return stay on file for a decade. The bank's original PDF is the record of authority; the Excel file is a working copy. Keep both, and confirm the current period against the NBR's published VAT General Guide, since retention rules have already changed once.

Is my client's NBB statement uploaded to a server when I convert it?

Not with BayanSheet. The PDF is parsed by JavaScript running in your own browser and never leaves your device, which you can prove by switching off your Wi-Fi and converting anyway. Many online converters do upload the file to a backend, where it then sits under someone else's retention policy. For a Bahraini practice bound by client confidentiality, that difference is the whole decision.

← All guides