Quick Answer
Choose a personal or business account that permits your intended use, check accepted ID and residence evidence, then complete the bank’s BSN requirements. ABN AMRO allows a BSN within 120 days for its personal route. Confirm access and test a small EUR transfer before moving client invoices; keep a permitted fallback during onboarding.
Key Takeaways
- Choose account terms that permit your receipts before comparing package prices or application speed.
- Keep BSN, residence eligibility and business identification separate; deadlines are product-specific.
- Preempt onboarding delays by preparing a clean document pack (valid ID, proof of Dutch address, and BSN if available) with consistent legal name and address formatting.
- Assume "application submitted" is not "account active," and validate activation with a small inbound SEPA Credit Transfer test payment.
- When a client says "paid" but funds haven't arrived, classify the rail (SEPA vs SWIFT) and request bank-practical trace data (receipt, details used, and UETR for wires).
Open an account that can receive and reconcile your payments#
The goal is simple: get paid predictably in EUR, reconcile cleanly, and avoid preventable blocks or delays caused by incomplete documentation or unclear onboarding status.
Separate application approval from usable funds. Standard electronic EUR transfers within the relevant EU payment-service scope generally reach the beneficiary PSP by the next business day after receipt of the order; cutoffs, weekends and paper instructions affect that clock. An instant euro transfer follows a different path, normally within ten seconds. Ask which transfer the payer actually sent before diagnosing a delay.
Choose your onboarding path#
Decision tree (BSN / no BSN):
| Your status | Safe default action | "Confirm safely" prompt |
|---|---|---|
| BSN in hand | Proceed with onboarding and immediately test a small inbound transfer | "After approval, can I receive inbound SEPA transfers immediately, or do you apply an activation step?" |
| No BSN yet | Start onboarding only if the bank explicitly allows it and states the deadline to add BSN | ABN AMRO’s personal-account page allows submission before a BSN, with a 120-day deadline to provide it. Other banks and business products have their own rules. |
Document readiness checklist (reduce back and forth):
- Valid passport or ID. Many flows ask you to photograph the document, sometimes with a selfie.
- Proof you live in the Netherlands, especially if you hold a non-EU passport. Banks may request evidence such as a municipal registration extract.
- BSN if available. BSN (Burgerservicenummer) is the unique personal number allocated to everyone registered in the Personal Records Database (BRP).
Cashflow risk workflow (client by client)#
Before you share any Dutch bank details, run this:
- Rail choice: For EUR payments, SEPA Credit Transfer is a common option.
- Activation check: Assume "apply in 10 minutes" in an onboarding flow describes form completion, not full activation. Treat activation as unconfirmed until you receive an inbound test payment.
- Fallback ready: Keep a SEPA-capable backup receiving path active until the new account proves it can receive funds normally.
Track each payment from invoice to usable funds#
Treat the bank-account step as one part of a repeatable money lifecycle. Each stage should produce the proof the next stage needs. Once you see onboarding as one node in the system, you can name the identifiers and checks that actually move money. That is what keeps you steady when a client asks for "the right details" and a bank asks for "one more document."
The identifiers you need#
You only need a few building blocks, but you should name them precisely.
| Component | What it is | What you use it for (operator view) |
|---|---|---|
| SEPA (Single Euro Payments Area) | A framework for euro payments under harmonised standards | Standardise EUR payment details so you don't reinvent instructions per client |
| SEPA Credit Transfer (SCT) | A payment instrument for euro credit transfers between payment accounts located in SEPA | Use it for euro bank transfers, for example paying invoices, between accounts in SEPA |
| IBAN | International Bank Account Number | Put it on invoices as the account identifier your client's AP team can pay |
| BIC | Business Identifier Code defined by the ISO 9362 standard | Provide it when a payer or setup screen asks for a bank identifier in addition to IBAN |
| BSN (Burgerservicenummer / Citizen Service Number) | A unique number for everyone registered in the BRP | Treat it as an identifier financial institutions may be obliged to use for clients |
Two facts matter in practice: SEPA standardises cashless euro payments across the region, and SCT works only for euro transfers between accounts located in SEPA.
The compliance layer (KYC, AML) and your operator loop#
KYC is how institutions verify identity, assess risk, and monitor transactions. AML covers the rules and controls designed to prevent and detect money laundering.
| Stage | Action | Record |
|---|---|---|
| Collect | Issue invoice with your legal name, IBAN, and a single reference format you enforce | Invoice with your legal name, IBAN, and one reference format |
| Verify | Confirm the payer used the right beneficiary details and reference | Match funds to the invoice |
| Reconcile | Match bank-line to invoice-line, then store the proof | Invoice PDF plus bank confirmation |
| Convert | Only convert when you need another currency | Keep the conversion record with the invoice trail |
| Payout | Move money to personal pay only after you close the reconciliation loop | Reconciliation loop closed before payout |
Your job is to run a tight loop that produces clean evidence:
- Collect: issue the invoice with your legal name, IBAN, and a single reference format you enforce.
- Verify: confirm the payer used the right beneficiary details and reference so you can match funds to the invoice.
- Reconcile: match bank-line to invoice-line, then store the proof.
- Convert: only convert when you need another currency. Keep the conversion record with the invoice trail.
- Payout: move money to personal pay only after you close the reconciliation loop.
For example, a new Dutch client asks for "BIC too." You send the IBAN + BIC from your account, require the invoice number as the transfer reference, and reconcile as soon as it lands. If you automate anything, automate reconciliation first.
Related: Automating Your Freelance Finances: A Zapier Workflow for Connecting Stripe.
Which path fits you: resident with BSN, no BSN yet, or non-resident?#
Pick your safest path by answering two questions: do you have a BSN, and can you prove a Netherlands address or local ties with documents a bank will accept? With the money lifecycle mapped, you can choose an onboarding route that does not fail mid-payment.
Your decision tree (BSN + proof)#
A BSN identifies you in Dutch government administration. Residents receive one through municipal registration; people abroad or staying less than four months can register in the RNI non-resident database. Having a BSN does not itself establish Dutch residence or account eligibility. Keep residence evidence and the bank’s tax-identification requirements separate.
Use this quick picker:
| Your status | What it usually means operationally | Your operator questions (ask before routing invoices) |
|---|---|---|
| Path A: In the Netherlands with a BSN | KYC can be more straightforward because you can provide the identifier banks must hold | "Do you support freelancer use on this plan (personal vs business expectations)?" "What name format will appear on my account for beneficiary matching?" |
| Path B: Relocating soon, no BSN yet | Some banks may start onboarding without a BSN, but you must manage the deadline and any pre-BSN limits | For ABN AMRO personal accounts, supply the BSN within 120 days. Confirm separate residence evidence, activation and business-product rules. Ask ING directly about the route available for your documents; do not apply a shared 90-day assumption. |
| Path C: Non-resident invoicing Dutch clients | A BSN or Dutch client does not establish residency eligibility. An existing EU/EEA business-suitable euro account may meet your collection needs. | Can your AP team use my reachable EU/EEA IBAN for EUR transfers? If an NL-only rule blocks it, request the reason and correction in writing. |
If you run Path B, keep your existing EU IBAN live on invoices until the bank confirms, ideally in writing, the BSN deadline and whether the account can receive inbound euro transfers without restrictions.
Edge-case prompt: residence permit and W documents#
A Type W document identifies an asylum applicant waiting for an IND decision. W and W2 documents have different eligibility contexts; they are not interchangeable with a residence permit or proof of address. Ask the bank which application channel accepts your exact document instead of assuming an app will.
Your script to the bank (copy, paste, send): "I want to open a Dutch bank account. For ID and status, I have [document type]. Which document types do you accept for identity and for Netherlands address proof, and do you require a BSN at onboarding or within a set timeframe?"
What documents do you actually need - and which ones get rejected?#
Bring (1) valid ID, (2) proof of your Dutch address, and (3) your BSN if you have it. Banks vary, but those are common inputs in Dutch onboarding flows. Once you pick your path, stop guessing and build a document pack that survives first review and follow-up checks.
The document pack (operator-safe defaults)#
Use the receiving bank’s checklist; identity, residence evidence and account purpose are different requirements.
| Document type | What "good" looks like | Notes you should plan for |
|---|---|---|
| Identity document | A valid passport or national ID that you can photograph clearly | Some identity checks require a photo, sometimes with a selfie, of your Dutch ID card, residence permit, or international passport. |
| Proof of your Dutch address | The exact document accepted for the bank’s residence check | For ABN AMRO personal onboarding, options include recent BRP proof or its relocator declaration. Its published list excludes an RNI extract and a copy of a residence permit as residence proof; an IND admission letter or stamped/signed enrolment certificate can take longer. |
| BSN (Citizen Service Number) | Your BSN when available, recorded consistently in your admin | ABN AMRO personal accounts: submit within 120 days. Confirm ING or a business-account deadline directly rather than borrowing this rule. |
| Residence status (when applicable) | Dutch residence permit | Bring it when your status makes it relevant, including some non-EU/EEA student situations. |
For a student route, check the bank’s required enrolment document, signature or stamp and accepted identification before submitting. University advice can help prepare the appointment, but the bank’s product checklist controls acceptance.
"Rejected" usually means "not verifiable": preventable friction#
You can't control every review decision, but you can control clarity.
- Lock identity formatting: Use the same legal name order and spelling everywhere you submit.
- Make the address match exactly: Copy the address line-by-line across documents, including unit formatting and postal code spacing. Consistency beats "close enough."
- Expect "where did the money come from?" questions: Banks may use a risk-based assessment of the origin of the funds. Keep supporting documentation ready so you can answer quickly if asked.
Compare ABN AMRO and ING for your circumstances#
Start with account purpose. The €4.30 ABN AMRO package and ING consumer packages describe personal banking, not the price or eligibility of a freelancer business account. Dutch legal rules may allow a sole proprietor or VOF to use a personal IBAN, but bank terms can prohibit business use; ABN AMRO explicitly does. Companies such as BVs and NVs need a business account. Compare the product whose contract permits your receipts, then its onboarding and daily operation.
Score the account you will actually use#
When you compare Dutch bank accounts, you are really buying three things: an onboarding path you can complete, a usable account you can invoice through, and predictable cashflow.
Compare official eligibility, account terms and costs for the plan you need:
| Criteria | What to verify | ABN AMRO (signals to verify) | ING (signals to verify) |
|---|---|---|---|
| Onboarding | Product and identification channel | Personal app route accepts specified identity documents; BSN and residence evidence can follow within the published 120-day limits | Use ING’s official account route and document list; obtain a branch or support route if the app does not accept your document |
| Personal package price | Consumer baseline, not a business quote | Basic Payment Package: €4.30/month from January 2026; it is not permitted for business/professional use | June 2026 renamed OranjePakket to ING Go and OranjePakket Extra to ING More. The discounted OranjePakket is closed to new customers; compare current packages |
| Business receipts | Contract permission and business identity | Choose an eligible business account for freelancer or company receipts | Compare the relevant business product and its identification, registration and pricing requirements |
| Access and support | Inbound EUR, outgoing access, limits and statements | Confirm account restrictions and statement export; a small successful payment is one functional test | Use the same checks, including escalation for missing or returned transfers |
The questions to ask before you submit (copy/paste script)#
Send this in support chat or email, then save the transcript:
| Question | Confirms | Save |
|---|---|---|
| Can I complete onboarding without a BSN? If yes, what is the deadline to add my Burgerservicenummer? | Whether you can onboard without a BSN and the deadline to add it | Support chat or email transcript |
| Can I receive SEPA Credit Transfer payments immediately after approval, or are there activation holds tied to KYC/AML? | Whether inbound SEPA is available immediately after approval | Support chat or email transcript |
| Which proof-of-address documents do you accept for the Netherlands, and what file formats do you support? | Accepted proof-of-address documents and file formats | Support chat or email transcript |
Before routing client receipts, confirm that the account’s terms permit the business use, relevant documents are accepted and you can access the funds. A small test establishes a working route at that moment; it does not guarantee that later transfers avoid reviews or limits.
Start with the bank's official onboarding checklist, then use support chat to close the gaps. Treat third-party summaries as directional, not definitive.
Compare fees, currency conversion and payment delays#
Model the real cost of a Dutch bank account as fees + FX leakage + ops time + payment friction, then choose the setup that gets invoices to cleared funds fastest and cleanest. Once onboarding and activation risk are handled, the cheapest monthly plan can still cost you more if it creates slow reconciliations, short payments, or messy FX documentation.
Build a fee impact worksheet that matches your inflows#
Start simple. Build a one-page worksheet you can reuse for any Dutch bank account option, including ABN AMRO, ING, or alternatives. Track volume by rail, then attach the bank's fee schedule to your reality.
| What to track | Why it matters for time-to-cash | Fill it in like an operator |
|---|---|---|
| Inbound payments via SEPA Credit Transfer (EUR) | SCT runs in euros and between accounts in the Single Euro Payments Area, which reduces "what rail did they use?" confusion | Count inbound SCTs per month, note typical invoice size, and record any incoming SCT fees, if any. |
| Card payments | Faster authorization can still create dispute work and refund admin | Count transactions, note dispute handling steps and evidence you need. |
| International wire (non-SEPA) | Wires can route through intermediary banks, and each intermediary may deduct fees, creating short payments and long traces | Count how many clients pay this way, and flag them as "high reconciliation overhead." |
| FX events (non-EUR income) | Conversions create margin uncertainty unless you can see the markup, timestamp, and export a record for tax and audit | Count conversions per month. Require downloadable history showing rate and time. |
For example, a client insists on paying by wire. Your invoice lands short because an intermediary bank deducted a fee. You now burn cycles matching the payment, chasing the delta, and explaining it to your accountant. That cost never shows up in the €4 monthly plan comparison.
Prevent hidden cost traps (and write safer terms)#
Two common traps create avoidable chaos:
- Wire fee split confusion (OUR/SHA/BEN): OUR means the sender pays all transfer fees, SHA means fees are shared, and BEN means the receiver pays all fees. SHA can still lead to deductions before funds reach you, which creates short-paid invoices and reconciliation mess. Default to SEPA Credit Transfer in EUR when possible.
- Intermediary bank deductions on non-SEPA wires: An intermediary bank can sit between the sending and receiving banks. Each bank in the route may deduct its own fee, and the route can vary. Expect variability and design around it.
Operational comparison checklist (run on ABN AMRO and ING):
- Fees: monthly plan, debit card, extra cards, cash withdrawals, incoming and outgoing SEPA.
- FX: visible markup, rate timestamp, exportable conversion records.
- Support: how they handle inbound transfer traces, including reference tracking and investigation workflow.
Margin protection standard (add to payment terms where appropriate): request that clients pay invoices in EUR via SEPA Credit Transfer to your IBAN, and require a single payment reference format, for example the invoice number. This reduces FX ambiguity and helps prevent unmatched deposits.
How do you get paid reliably in the Netherlands (SEPA, iDEAL, and dispute-aware rails)?#
Pick the payment rail that matches your risk tolerance and reconciliation capacity, then enforce one invoice standard and one follow-up workflow. Reliability comes from constraints you enforce, not from hoping every payer behaves.
1) Choose rails by risk profile (and by who pays you)#
A credit transfer is initiated by the payer and moves money from the payer's account to the payee's account. That matters because the payer initiates the payment, so you have less control over how references and payer details show up unless you set clear instructions.
Use this operator matrix:
| Rail | What it is in practice | Operational upside | Primary risk you must design for | Setup dependencies |
|---|---|---|---|---|
| SEPA Credit Transfer (EUR) | Payer-initiated bank transfer to your bank account, for example an IBAN-based transfer | Clean paper trail; simple matching when the reference stays consistent | Missing or messy references create unmatched deposits and slower tracing | You need a bank account that can receive the relevant inbound EUR transfers. Confirm any account or onboarding limits with your bank. |
| Card payments | Customer pays via card through a provider | Checkout-friendly for some buyers | Disputes and chargebacks require proof, policy clarity, and tight refund terms | Processor account, evidence workflows, clear service delivery records |
| iDEAL / Wero | Online bank payment through a participating partner | Familiar checkout and payment confirmation for Dutch customers | Merchant eligibility, settlement timing, refunds and delivery obligations still need a workflow | Contract with an iDEAL / Wero partner, business registration and business bank account; eligible non-Dutch merchants can receive settlement to a foreign account |
2) Invoice hygiene + the repeatable payment-risk workflow#
Lock an invoice template that reduces human error, especially when you're using a new account for the first real inbound payments.
For a €1,000 invoice, record the amount received separately from fees: if a non-SEPA wire credits €975 after deductions, match €975 to the invoice and keep the €25 difference open until you establish the contractual fee allocation. A receipt for the full €1,000 sent is useful trace evidence, but it does not close the receivable. If the payer later sends €25, link that second bank line to the same invoice rather than creating another sale.
Invoice hygiene (operator standard):
- Use one legal name format that matches your bank's KYC record. Copy it from your bank profile; don't "pretty it up."
- Include the bank details your payer needs, for example your IBAN, and add BIC if a payer requests it.
- Define one reference rule, for example: "Reference must equal invoice number only."
- Put your payment terms in writing, for example due date and any late-fee language if you use it.
Euro-area banks now provide verification of payee for covered EUR credit transfers. If the payer sees a close match or no match, check the name registered against the receiving IBAN through a trusted channel. Do not tell the payer to ignore a warning or accept changed details from an unverified email. A match reduces account-detail mistakes; it does not prove the invoice or supplier is legitimate.
Client-by-client workflow (run it every time):
- Before work: set a deposit + milestone schedule, choose your payment terms, and confirm the payer entity name you will invoice.
- During payment: send the invoice with a single allowed reference format. Schedule reminders before the due date.
- After receipt: reconcile reference to invoice, then store evidence, including bank confirmation and invoice PDF, for audit readiness.
When rules vary, don't guess. Ask your bank or PSP for requirements and limits in writing, especially for iDEAL enablement.
Want a quick next step while you set this up? Try the free invoice generator.
Client says "paid" but nothing arrived - what's your troubleshooting flow?#
Run a two-step flow: classify the rail first, then request the exact trace data your bank can act on. The goal is to turn "we paid" into bank-practical evidence, fast.
Step 1: Classify the payment type (so you don't chase the wrong system)#
Start with one question: "Was this a SEPA Credit Transfer in EUR, or an international wire (SWIFT)?" The rails behave differently, and so do the identifiers your bank will request.
- Standard SEPA Credit Transfer: ask for order receipt/execution time, amount, beneficiary IBAN and end-to-end reference. The next-business-day clock depends on receipt, cutoffs and business days; a queued instruction is not proof of execution.
- SEPA Instant: successful instant transfers normally make funds available within ten seconds. If the payer sees a timeout or uncertain result, they should ask their bank to determine the final status before sending again.
- SWIFT wire: obtain the UETR from the sending bank together with the value date, currency, amount and beneficiary details. UETRs support tracing beyond just gpi-member payments.
Request evidence, trace the payment and agree the next action#
Use this checklist in order. It prevents spirals and keeps the burden of proof where it belongs.
| What you request | SEPA Credit Transfer | International wire (SWIFT) | Why it matters |
|---|---|---|---|
| Invoice PDF (the exact one) | Yes | Yes | Aligns amounts, beneficiary, and reference expectations |
| Proof of payment (screenshot or PDF receipt) | Yes | Yes | A payment receipt gives the bank something to trace |
| Beneficiary details used | IBAN, beneficiary name | IBAN, beneficiary name, BIC if shown | Catches typos and mismatches fast |
| Trace identifiers | Any reference they entered, if any | UETR, sending bank SWIFT details | Gives your bank something concrete to search |
Operator cadence (not a bank rule):
- First message: Request the receipt plus the beneficiary details they used. For wires, request the UETR in the same message. Restate your payment terms and that you'll resume work when funds clear.
- Next follow-up: Ask the client to request a trace from their bank. In parallel, contact your bank with the same packet: invoice, IBAN, beneficiary name, receipt, and UETR if available.
- If it drags: Send a formal payment chase note that references the contract and invoice, and pause scope until resolution.
- If the payment’s final state is unknown, request bank confirmation before asking for a replacement. If it was returned, keep the return evidence and agree corrected details. Track both payments if a late original arrives, then resolve any overpayment.
If you're using a new bank account setup, treat your first inbound payments like test runs.
When funds show as received but unavailable: reply to your bank quickly with the documentation they request, often things like the invoice and contract. Then standardize future inbound patterns, such as the same payer entity and consistent reference, to reduce back-and-forth.
If you can't open a Dutch bank account yet, what's the safest interim setup?#
Use the simplest SEPA-capable receiving path you can operate cleanly today, then layer reconciliation and compliance records so onboarding doesn't block revenue. If you're waiting on a bank decision or missing paperwork, your job is to keep collections stable while reducing future friction.
Decide based on the constraint (paperwork, onboarding, non-local setup)#
Start with a blunt diagnosis:
| Constraint | What it means | Safe default |
|---|---|---|
| Onboarding still in progress | Banks may still scrutinise applications due to strict legislation and acceptance policies | Plan for friction, not speed |
| Local paperwork not ready yet | A bank may ask for documentation you cannot provide yet | Keep a non-Dutch fallback active so cashflow does not depend on one approval path |
| You already have a SEPA-zone business account | You may not need a Dutch bank account just to collect EUR | Keep collecting via your existing EU IBAN until your Dutch account works end-to-end |
In practice, don't make revenue depend on a single approval path. Keep your current SEPA-capable fallback live until the Dutch account works end-to-end, especially if onboarding is still in progress or local paperwork is not ready.
Interim options + risk controls (so you stay paid and audit-ready)#
Use this decision table, then confirm acceptance with each client and test with a small payment first.
| Interim setup | When it fits | Operator tradeoffs | Safe operating rules |
|---|---|---|---|
| Existing EU IBAN (SEPA Credit Transfer in EUR) | You already run an EU account and invoice Dutch B2B clients | Covered EU/EEA euro payment accounts must not be rejected solely for their country. Request correction from the payer, then report an unresolved covered refusal to the responsible authority with evidence. | Put the IBAN on the invoice, require EUR via SEPA, and run a test payment before routing a high-stakes invoice |
| Modular stack (collect → track → convert → payout) | You serve many clients and want redundancy if one onboarding stalls | More moving parts, more reconciliation work | Assign one "receiving endpoint" per client type, document every transfer hop, and export statements regularly |
Risk controls during the interim period:
- Don't route a large one-off payment to a brand-new endpoint until you've proven the account works normally for inbound payments and you can access funds without surprises. Stage changes; don't rely on hope that KYC/AML won't trigger.
- Standardize invoice references and payer naming with one reference format and one legal name format. You can't guarantee zero holds, but you can eliminate avoidable ambiguity.
While you bridge the gap, protect runway with a conservative cash plan: The Best Budgeting Methods for People with Irregular Income.
Complete the setup and keep a reusable client checklist#
Choose a permitted account, complete its document requirements and confirm that you can receive and access funds. Then use the same invoice-reference and tracing process for each client. This first setup session prepares the application and records; it cannot guarantee bank approval in an hour.
The focused setup plan (run this as one clean pass)#
1) Pick your path and pre-ask the limits before you route money. Whether you use a Dutch bank account or another provider, treat it as compliance onboarding. Banks perform customer due diligence (CDD), which includes identifying you and verifying your identity using reliable, independent documents or data. Start with a clean doc pack and get clarity on operational limits in writing where you can:
- Identity: passport or ID.
- Residence evidence from the exact bank checklist; do not assume a rental contract or residence permit meets a distinct residence-proof requirement.
- Status documents if relevant: a Dutch residence document (model 2012 or model 2020) for longer stays, or a W-document if you applied for asylum and await a decision.
- BSN and other tax identifiers requested for the product. RNI registration can provide a BSN without establishing Dutch residence.
2) Standardize invoices like an operator. SEPA is designed to make cross-border euro payments as easy as national euro payments, and a SEPA Credit Transfer (SCT) must run in euros between accounts located in SEPA. Your invoice should make paying boring:
- Lock your legal name spelling and formatting, and keep it consistent with your bank profile.
- Always include your IBAN and include BIC if the payer asks for it.
- Set reference rules and reminders. Add payment terms you can enforce, including due date, milestones, and any late-fee language only if appropriate for your contracts.
3) Build a troubleshooting flow before something breaks. If a client claims they paid via wire and nothing arrives, ask for proof of payment and request the UETR, if available. That gives you a concrete reference your bank can use when investigating.
Safe default checklist (copy/paste)#
- I confirmed with my bank whether I can receive inbound SEPA Credit Transfer right now, and I documented any limits, for example holds, caps, or missing info.
- My invoice legal name matches my bank profile exactly, including order and characters.
- Every invoice includes: IBAN (and BIC if needed), a single reference format, a due date, and clear milestones.
- I keep a stored doc pack: ID, official proof of address, BSN (if I have it), plus any relevant residence documents and sample contracts or invoices for verification questions.
Frequently Asked Questions
Can a foreigner open a bank account in the Netherlands?
Foreigners can apply when their identity, residence or business situation meets the bank’s product criteria. A BSN helps satisfy identification requirements, but it does not guarantee acceptance at every bank. Select a permitted personal or business product and use its document checklist.
Can I open a Dutch bank account without a BSN?
ABN AMRO’s current personal-account route lets applicants start before obtaining a BSN and requires it within 120 days after opening. Residence proof has its own requirements. Do not extend that deadline to ING, bunq or business accounts: obtain the relevant product’s policy and any access restrictions before moving client receipts.
What documents do I need to open a bank account in the Netherlands as a foreigner?
Start with the non-negotiable: most banks will at least ask for a valid proof of identification. In practice, they may also ask for additional documents, for example proof of address, and some banks that let you start without a BSN still require you to provide it later. Bring clean, matching records with the same legal name and address format across documents to reduce back-and-forth.
How long does it take to open a Dutch bank account (really)?
No one can promise a universal timeline because banks control verification and may request more documents mid-process. Separate "application submitted" from "account fully usable for getting paid," especially if you still wait on a BSN or other documents. Keep a SEPA-capable fallback active until you successfully receive and reconcile a test payment.
Which bank is better for expats/freelancers: ABN AMRO vs ING?
Choose by the product that permits your receipts, accepted documents, residence/BSN route, access limits and statement support. ABN AMRO publishes a 120-day BSN deadline for personal onboarding; ING’s June 2026 consumer-package changes make older OranjePakket comparisons incomplete. Obtain the current business-product requirements if you invoice as a freelancer.
Do I need a Dutch bank account to get paid by Dutch clients?
Not necessarily. A reachable EU/EEA euro account suitable for your business can receive Dutch-client SEPA transfers. DNB explains that requiring only Dutch IBANs for covered euro transfers or direct debits can be prohibited IBAN discrimination. This EU/EEA protection is narrower than the full SEPA country list. It does not make transfers free or authorize business use of a personal plan.
What is iDEAL and do I need it for my business?
iDEAL / Wero lets customers pay through their bank at online checkout. Offering it requires a merchant agreement with a participating partner; eligibility includes business registration and a business bank account. A permitted foreign business account can work for a non-Dutch merchant. B2B invoice collection can use ordinary SEPA transfers without adding checkout.
Try a related tool
Researched and edited by the Gruv editorial team. Gruv builds cross-border billing, payouts, and finance-operations software for global businesses.
Sources
Includes 4 external sources outside the trusted-domain allowlist.
- business.gov.nl/coming-to-the-netherlands/living-in-the-neth...trusted
- ecb.europa.eu/paym/retail/instant_payments/html/instant_pa...trusted
- ecb.europa.eu/paym/retail/instant_payments/html/index.en.htmltrusted
- eur-lex.europa.eu/legal-content/EN/TXTtrusted
- abnamro.nl/en/personal/payments/open-an-account/index.htmlexternal
- abnamro.nl/en/personal/payments/open-an-account/proof-o...external
- dnb.nl/en/payments/how-do-payments-work/sepa-and-ib...external
- government.nl/faq/when-should-i-register-with-the-personal...external
Educational content only. Not legal, tax, or financial advice.
Related Posts

Automating Your Freelance Finances: A Zapier Workflow for Connecting Stripe, QuickBooks, and Wise
Start with one payment flow you understand, then automate its accounting record without losing the source reference. Stripe captures payments, QuickBooks holds the books, Zapier connects the selected steps, and Wise records any separate cross-border balance or conversion activity.

The Best Budgeting Methods for People with Irregular Income
Budgeting with irregular income works better when you separate "money arriving" from "money you're allowed to spend," then run the same transfer routine each cycle.

The Freelance Payment Penalty: A Modeled Audit of Platform Fees, FX Spreads, and Payout Delays
The money rarely disappears through a single, easy-to-spot fee. The real loss is stacked. A marketplace takes its commission, a processor adds a charge for international cards, a bank or payment company converts the currency at a spread, a platform holds the funds before release, and a wire sheds a little to intermediaries on the way in. Each layer looks defensible on its own, but the worker feels the combined result as a smaller deposit and a later payday.

