← Back to Blog2025-12-259 min read

IBAN vs SWIFT/BIC vs account number: what you actually need for an international transfer

A practical guide to the three banking identifiers people mix up. Learn when you need an IBAN, when you need a SWIFT/BIC, and what “account number” means across countries.

By RawTools Teamiban vs swift

The short answer

Most of the time, you need either an IBAN (common across Europe and many other countries) or a local account number + routing details (common in the US and some other regions). You may also need a SWIFT/BIC when the payment goes through the international SWIFT network (especially for cross-border wires).

If you’re stuck, the right question isn’t “Which one is correct?” It’s: Which payment rail are you using? SEPA credit transfer, domestic transfer, or international wire.

What an IBAN is (and what it isn’t)

An IBAN (International Bank Account Number) is a standardized identifier that includes a country code, check digits, and a country-specific account structure. It’s designed to reduce errors in cross-border payments by making the destination account unambiguous.

Important: an IBAN is not “a bank code.” It contains bank and branch identifiers in many countries, but it’s ultimately an account identifier that’s safe to copy/paste and validate.

If you have an IBAN and it passes checksum validation, you’ve eliminated most transcription mistakes. It still does not prove the account exists or belongs to a specific person—only that the number is structurally valid.

What a SWIFT/BIC is (and why banks ask for it)

A SWIFT/BIC (Bank Identifier Code) identifies a bank (and sometimes a branch) in the SWIFT network. Think of it as a “bank address” used for routing, not an account number.

Many international wires require a SWIFT/BIC because the sending bank needs to know which institution to route through. In some cases, intermediaries are involved, and the SWIFT/BIC helps define the path.

Common confusion: people assume SWIFT replaces IBAN. In reality, for many destinations you need both: IBAN for the beneficiary account + SWIFT/BIC for the beneficiary bank.

What “account number” means (and why it varies)

“Account number” is a generic label. In some countries it’s a simple numeric string. In others it includes check digits, bank identifiers, or branch codes. In the US, for example, payments often require account number + routing number (ACH) rather than an IBAN.

This is why forms can feel inconsistent: a “bank transfer” form might ask for “account number” for domestic rails, but ask for “IBAN” for international destinations.

Which one do you need? Use the payment-rail rule

1) SEPA transfer (EUR within SEPA)

For SEPA credit transfers, you typically need:

  • IBAN (required)
  • BIC/SWIFT (sometimes optional; depends on bank and corridor)

SEPA is designed to make cross-border EUR payments feel domestic. If the recipient is in a SEPA country and you’re sending EUR, IBAN is the key field that must be correct.

2) International wire (non-SEPA or cross-currency)

For international wires, you commonly need:

  • SWIFT/BIC (beneficiary bank)
  • IBAN (if the destination country uses IBAN)
  • Account number + bank/branch details (if the destination does not use IBAN)

When in doubt, assume SWIFT/BIC is required for true international wires, and the beneficiary account identifier depends on the destination country.

3) Domestic transfer

Domestic rails vary widely. Examples:

  • US (ACH): routing number + account number
  • UK: sort code + account number (or IBAN for international)
  • Many EU countries: IBAN is commonly used even for domestic

Domestic transfer forms usually won’t ask for SWIFT unless the payment is routed internationally.

Common mistakes that cause failed payments

  • Mixing rails: entering an IBAN into a form that expects a domestic account number (or vice versa).
  • Copying spaces/hidden characters: some systems reject IBANs with unusual whitespace. (Good systems normalize it, but not all do.)
  • Using the wrong SWIFT/BIC: some banks have multiple BICs by region or branch.
  • Ignoring country-specific length: “looks right” is not validation—each country has a fixed IBAN length.
  • Assuming validity means ownership: IBAN checksum can pass even if the account is closed or not owned by the intended recipient.

A quick workflow before you send money

  1. Validate the IBAN before you submit the payment form.
  2. Parse it if you need to double-check bank/branch identifiers.
  3. Look up the country rules if the IBAN seems unusual (length/grouping differs by country).

Use these tools to do that quickly:

FAQs

Do I always need a SWIFT/BIC if I have an IBAN?

No. Some SEPA transfers only require IBAN, and some banks can route without asking for BIC. For international wires, SWIFT/BIC is commonly required even when IBAN is provided.

Can an IBAN be valid but still fail a transfer?

Yes. Validation checks structure and checksum, not whether the account exists, is open, or matches the recipient name. Transfers can also fail due to compliance checks, currency corridor restrictions, or incorrect bank routing details.

Is SWIFT the same as BIC?

People use the terms interchangeably. BIC is the code format; SWIFT is the network that issues and routes using those codes. Forms may label the field as SWIFT, BIC, or SWIFT/BIC.

Why do some forms ask for “IBAN” and “account number”?

Because the form supports multiple destination types. If the destination country uses IBAN, that’s typically the account identifier. If it doesn’t, the form falls back to domestic account number + routing details.

Should I store IBANs with spaces?

For storage, electronic format (no spaces) is the safest. For display to humans, spaced/grouped format is easier to read. If you need to convert, use the IBAN Formatter.

What’s the fastest way to check if an IBAN is correct?

Run it through the IBAN Validator. It checks country length, allowed characters, country format, and the MOD-97 checksum.

Does IBAN validation tell me which bank it is?

Not reliably as a “bank name.” Many countries embed a bank identifier inside the IBAN, which you can extract with the IBAN Parser, but mapping that identifier to a bank name is a separate dataset and may not be universal.

📑 Quick Info

📅
Published
2025-12-25
⏱️
Reading Time
9 min
✍️
Author
RawTools Team