Live API · no key required
Playground
Test the API for free — no payment, no signup. Every answer below is a real, live response.
Try a live call
Validate any IBAN — SEPA reach, issuer type, risk and Swiss clearing.
Examples
✓ Valid🇨🇭CHUBS Switzerland AGUBSWCHZH0.00msserver
low · cleanSCTSDDInstantIID 00230SICQR-IID
Account
- IBAN
- CH10 0023 0000 0000 1234 5
- Bank code
- 00230
- Account
- 000000012345
- Check
- 10
SEPA reachability
- Member
- Schemes
- SCT · SDD · SCT_INST
- VoP required
Issuer
- Type
- bank
- Name
- UBS Switzerland AG
- BIC
- UBSWCHZH
- City
- Zürich
Swiss clearing
- IID
- 00230
- Institution
- UBS Switzerland AG
- Town
- Zürich
- SIC
- Instant CHF
- euroSIC
Risk indicators
- Issuer type
- bank
- Country risk
- standard
- Test BIC
- SEPA reachable
{ "iban": "CH1000230000000012345", "valid": true, "country": { "code": "CH", "name": "Switzerland" }, "check_digits": "10", "bban": { "bank_code": "00230", "account_number": "000000012345" }, "sepa": { "member": true, "schemes": [ "SCT", "SDD", "SCT_INST" ], "vop_required": false, "vop_participant": false, "basis": "epc_register" }, "formatted": "CH10 0023 0000 0000 1234 5", "cost_usdc": 0, "bic": { "code": "UBSWCHZH", "bank_name": "UBS Switzerland AG", "city": "Zürich", "source": "IBANforge curated bank-code map", "as_of": "2026-09", "basis": "curated_map", "authoritative": false, "lei": null, "lei_status": null, "address": null, "postal_address": { "twn_nm": "ZURICH", "ctry": "CH", "format": "structured", "source": "Redistributed SWIFT BIC directory (PeterNotenboom/SwiftCodes, MIT)", "as_of": null } }, "issuer": { "type": "bank", "name": "UBS Switzerland AG", "classification": "default" }, "risk_indicators": { "issuer_type": "bank", "country_risk": "standard", "test_bic": false, "sepa_reachable": true, "sepa_reachable_scope": "country", "vop_coverage": false }, "bank_code_check": { "value": "00230", "status": "verified", "match": "register", "register": "SIX BankMaster (Swiss IID / BC-Nummer register)", "authoritative": true, "institution": { "name": "UBS Switzerland AG", "street": "Bahnhofstrasse 45", "post_code": "8098", "town": "Zürich", "country": "CH" }, "as_of": "2026-09" }, "clearing": { "iid": "00230", "name": "UBS Switzerland AG", "type": "bank", "town": "Zürich", "sic": true, "instant_payments_chf": true, "eurosic": true, "qr_iid": "30005", "qr_iid_source": "register", "qr_iids": [ "30005", "30308" ] }, "next_steps": [ { "code": "screen_compliance", "do": "Screen the institution against sanctions, FATF status and VoP reachability before the transfer. That endpoint reads the same bank-code verdict as this one, so it will not score an unconfirmed code as an ordinary bank.", "because": "bank_code_check.status is verified, so there is an institution to screen", "action": "POST /v1/iban/compliance" } ], "processing_ms": 0.07 }
Want to use this in your code?