FNB Branch Code: The Universal Code (250655) and Every Way to Find Yours
Here's the answer first: FNB's universal branch code is 250655, and for virtually every payment you'll ever set up — EFTs, debit orders, salary forms, account verification — it's the only FNB branch code you need. This guide covers the details around that answer: when a specific branch code still matters, how to find yours anyway, every South African bank's universal code for cross-checking, and the SWIFT details for money arriving from abroad.
The universal code, and why it exists
Branch codes date from an era when your account lived at a physical branch and payments had to be routed there. Modern core banking made the routing irrelevant, so each bank published a single universal branch code that works for any account it holds. FNB's is 250655. Using it:
- EFT payments to any FNB account: enter 250655 as the branch code, regardless of where the account was opened;
- Debit order and salary forms: 250655 is what employers, insurers and SARS need alongside your account number;
- Account verification services: the universal code verifies correctly;
- No exceptions in practice for consumers: if a form demands "your branch code" — 250655 is your branch code. The rare systems that still want the account's original branch code are legacy corporate setups, and even those accept the universal code almost universally now.
Every South African bank's universal branch code
Payments bounce more often from a mistyped code than any other detail, so here's the full cross-check list:
- FNB / RMB Private Bank: 250655
- Absa: 632005
- Standard Bank: 051001
- Nedbank: 198765
- Capitec: 470010
- African Bank: 430000
- TymeBank: 678910
- Discovery Bank: 679000
- Investec: 580105
- Bidvest Bank: 462005
- Postbank: 460005
Two practical notes: banking apps increasingly auto-fill the branch code once you pick the bank from a list (the safest route), and if a beneficiary gives you a six-digit code that differs from the list above, it's usually a legacy branch-specific code — still routable, but the universal code is the error-proof choice.
Finding your specific FNB branch code (when something insists)
- FNB app: your account details screen shows the account's branch code alongside the number;
- Online banking: account information displays branch details;
- Any FNB statement: the branch code prints in the account-details block;
- A bank confirmation letter (downloadable free in the app in seconds) carries account number, branch code and account type on FNB letterhead — the document that satisfies every HR and SARS request at once;
- When in doubt, use 250655 anyway — it routes to the same place.
Setting up payments that never bounce: beneficiary hygiene
- Load beneficiaries from the bank's own list: every SA banking app carries pre-loaded public beneficiaries (municipalities, insurers, SARS, retailers) with the details baked in — using them eliminates the branch-code question entirely for the payments most people make;
- Verify new private beneficiaries once, properly: confirm the account number by voice on a known number (not the number in the email requesting payment), pay a R1 test for large first payments, and confirm receipt before the balance;
- Name beneficiaries so future-you understands: "Sipho — rent — FNB" beats "S" three years later when you're auditing debit orders;
- Audit the list yearly: stale beneficiaries are where mispayments live — people change banks, and paying a closed account at best delays your money and at worst pays a recycled account number;
- Use payment references that reconcile: your account or invoice number in the reference field is the difference between an allocated payment and a month of "please send proof of payment" emails.
International payments: SWIFT, not branch codes
Money coming from outside South Africa doesn't use branch codes at all — the sender needs:
- FNB's SWIFT/BIC code: FIRNZAJJ;
- Your full account number (South Africa doesn't use IBANs — the account number plus SWIFT code does the job);
- The bank's name and your details as they appear on the account;
- A heads-up on fees and questions: inbound international payments attract receiving fees and, above certain patterns, balance-of-payments reporting questions — normal, not alarming. For regular foreign income (remote work, freelancing), comparing dedicated remittance routes against bank SWIFT fees is worth real money over a year.
Branch codes, account types and the details forms actually want
The branch code travels with two companions on every form, and both cause more friction than the code itself. Account type: forms ask cheque/current, savings or transmission — most modern FNB consumer accounts verify as cheque/current, but the account-details screen in the app states yours explicitly; a mismatched type can fail automated verification even with perfect numbers. Account holder name: verification services match the name against the bank's records, so use your name exactly as the bank has it — initials-versus-full-names mismatches are the top cause of "account could not be verified" errors on insurance and investment forms. And for the recurring case — proving your account to an employer, SARS or a landlord — skip transcription entirely: the app generates a stamped bank confirmation letter in seconds, and attaching it beats typing details into any form that allows an upload.
The mistakes that actually bounce payments
- Wrong account number, right branch code — the expensive one: a valid-but-wrong account number can pay a stranger, and recovery depends on the recipient's cooperation and the banks' processes. Verify account numbers character by character; the branch code is the easy part;
- Right details, wrong bank selected in the app's dropdown — the code and bank must match;
- Stale beneficiary details: people change banks (and banks exit — Sasfin's wind-down and the Old Mutual Money Account's closure both stranded old beneficiary entries). Re-confirm details for anyone you haven't paid in a year;
- Screenshot "proof of payment" trust: a proof-of-payment is a promise, not money — funds reflect when they reflect, and immediate-payment options exist for the times that matters (see our bank account comparison for how banks price them);
- Phishing at the moment of payment: the "our banking details have changed" email before an invoice is due is South Africa's most profitable fraud — verify any banking-detail change by phone, on a number you already had.
A short history, and why the codes look like they do
Six-digit branch codes are a BankservAfrica-era artifact: the national clearing system assigned each physical branch a routing identity, with each bank owning a number range — which is why FNB codes historically started with 2, Standard Bank's with 0, and Absa's with 6. When centralised core banking made physical routing obsolete, the banks each nominated one code in their range as universal rather than rebuild the clearing system — so 250655 is technically just another branch code that happens to accept everything. Two practical leftovers of the history: very old accounts sometimes verify against their original branch code in legacy corporate systems (the one scenario where the specific code matters), and the numbering explains why a mistyped code usually fails cleanly — a code outside the recipient bank's range simply doesn't route, which is the system quietly protecting you from the typo.
Frequently asked questions
What is the FNB universal branch code?
250655 — it works for all FNB (and RMB Private Bank) accounts for EFTs, debit orders, salary forms and account verification, regardless of where the account was opened.
Do I ever need my actual FNB branch code instead of 250655?
Almost never as a consumer — a handful of legacy corporate systems still ask, and your account-specific code is on your app's account details, any statement, or a free bank confirmation letter. When unsure, the universal code routes correctly.
What is FNB's SWIFT code for international payments?
FIRNZAJJ, paired with your full account number — South Africa doesn't use IBANs. Expect receiving fees on inbound international payments.
What happens if I use the wrong branch code?
Usually the payment simply fails and returns — the dangerous error is a wrong account number, which can pay the wrong person and requires a formal recall process. Verify the account number obsessively; use the universal branch code to make that field error-proof.
Are branch codes the same as universal codes at every bank?
Every major SA bank now publishes one universal code (FNB 250655, Absa 632005, Standard Bank 051001, Nedbank 198765, Capitec 470010) that works for any of its accounts. Legacy branch-specific codes still route, but the universal code is the error-proof default on any form.
Can I use 250655 for RMB Private Bank accounts?
Yes — RMB Private Bank runs on FNB's infrastructure and shares the 250655 universal code and FIRNZAJJ SWIFT code.
How long do EFT payments between banks take?
Standard EFTs clear in one to two business days depending on cut-off times; payments captured after the day's cut-off or on weekends move on the next business day. Real-time options (PayShap and the banks' immediate-payment services) settle in seconds for a fee — worth it when a bounced debit order or a waiting deliverer costs more than the premium.
Do branch codes change if my branch closes?
No — your account keeps working and the universal code keeps routing to it. Branch closures change where you queue, not how money finds your account, which is exactly the problem universal codes were created to solve.
Universal branch and SWIFT codes are stable but not immutable — banks occasionally restructure; verify with the bank for high-value or time-critical payments. General information.