IBAN & BIC Validator
Pricing
from $2.00 / 1,000 successful lookups
IBAN & BIC Validator
Validate IBANs and BIC/SWIFT codes offline: ISO 13616 mod-97 checksum and per-country BBAN structure for IBANs, format parsing for BICs. Checksum-valid IBANs are enriched with bank name, BIC, and address from openiban.com when available. Charged only on success — never for malformed input.
Pricing
from $2.00 / 1,000 successful lookups
Rating
0.0
(0)
Developer
Adrian Voss
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Validate IBANs and BIC/SWIFT codes for real — an ISO 13616 mod-97 checksum and per-country BBAN structure check for IBANs, format/structure parsing for BICs, all done locally and offline. Checksum-valid IBANs are additionally enriched with the issuing bank's name, BIC, city, and zip from openiban.com when available. No API key needed, and validation never depends on a third party being up.
Features
- Local, offline validation. IBAN checksum and BBAN structure, plus BIC format and structure parsing, run entirely in-actor — no dependency on any third-party service being up or correct.
- Auto-detection. Each input item is automatically classified as an IBAN or a bare BIC — no need to say which is which.
- Bank enrichment. Checksum-valid IBANs are additionally looked up against openiban.com for the issuing bank's name, BIC, city, and zip — this only ever adds detail, it never overrides a locally-confirmed valid result.
- Granular status codes.
VALID,VALID_BANK_UNCONFIRMED,ENRICHMENT_UNAVAILABLE,BAD_FORMAT, orCHECKSUM_INVALID— so you always know exactly why an item passed or failed.
How validation works
Validation is done locally and offline first — it does not depend on any third-party API being up or correct:
- IBAN: ISO 13616 mod-97 checksum plus per-country BBAN length/structure,
via the
ibantoolslibrary. A checksum-valid IBAN is then, additionally, looked up against openiban.com to enrich the result with the issuing bank's name, BIC, city, and zip — but that lookup only ever adds detail. If openiban.com is slow, down, or doesn't recognize the bank code, the IBAN is still correctly reported as valid (checksum and structure are objective facts, not something a third party can override), just without the bank name filled in. - BIC/SWIFT: format and structure validation and parsing (bank code,
country code, location code, branch code, test/production indicator), also
via
ibantools— fully local, no network call.
Each input item is auto-detected as an IBAN or a bare BIC — no need to say which is which.
How to use IBAN & BIC Validator
- In the Apify Console. Open the actor page and click Start — the
itemsfield is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found. - Via the API. Call it directly with a POST request — no Console needed once you have an API token:
curl "https://api.apify.com/v2/acts/accountable_eel~iban-bic-validator/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"items":["DE89370400440532013000"]}'
- On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.
Input
{"items": ["DE89370400440532013000", "DEUTDEFF500"],"maxConcurrency": 5}
items is a list of IBANs and/or BIC/SWIFT codes. One dataset row is
returned per item; rows with "found": false are never charged.
Output
IBAN item:
{"query": "DE89370400440532013000","found": true,"status": "VALID","data": {"type": "iban","iban": "DE89370400440532013000","valid": true,"countryCode": "DE","bban": "370400440532013000","bankName": "Commerzbank","bic": "COBADEFFXXX","city": "Köln","zip": "50656"}}
BIC item:
{"query": "DEUTDEFF500","found": true,"status": "VALID","data": {"type": "bic","bic": "DEUTDEFF500","valid": true,"bankCode": "DEUT","countryCode": "DE","locationCode": "FF","branchCode": "500","testBic": false}}
status is one of VALID, VALID_BANK_UNCONFIRMED (checksum-valid IBAN,
bank code not found in openiban.com's registry), ENRICHMENT_UNAVAILABLE
(checksum-valid IBAN, openiban.com unreachable), BAD_FORMAT, or
CHECKSUM_INVALID.
Use cases
- Invoicing & payments verification — catch a malformed or mistyped IBAN before it causes a failed or misdirected payment.
- Vendor/customer onboarding — validate bank details submitted through a signup or KYC form in bulk before they hit your payments system.
- Data quality cleanup — sweep an existing customer or vendor database for IBANs/BICs that fail checksum or structure validation.
- Bank enrichment — resolve a checksum-valid IBAN to its issuing bank's name and location for reconciliation or display purposes.
Pricing
$4 per 1,000 results, plus a $0.00005 start fee. Misses (found:false) are never charged.
Use it from Clay, n8n, Make, or an AI agent
This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.
curl "https://api.apify.com/v2/acts/accountable_eel~iban-bic-validator/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \-X POST \-H "Content-Type: application/json" \-d '{"items":["DE89370400440532013000"]}'
n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~iban-bic-validator/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"items":["DE89370400440532013000"]} (swap in an expression from an earlier node for a real value).
Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~iban-bic-validator/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"items":["{{value}}"]}, mapping the row's value into the items array.
MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "IBAN & BIC Validator | Apify" — the agent will find and run this actor.