{"service":"bank","object":"bank account / IBAN (a fraud/KYC dimension distinct from phone/email/entity)","method":"offline pure-compute; no network, no keys, no signing (canon #10)","coverage":{"iban_validation":"127 countries (ISO 13616 mod-97 + per-country structure/length)","bank_bic_resolution":"~45 countries (all SEPA + UA/CH/NO/DK/... ; ~30k bank records)","sepa_flag":"country-level SEPA-zone membership (NOT per-bank scheme participation)"},"data_sources":[{"name":"schwifty","license":"MIT","note":"bundled IBAN/BIC registries derived from public national registries (e.g. Bundesbank BLZ) + the ISO 13616 IBAN registry"},{"name":"ISO 13616 IBAN registry","note":"IBAN structure/checksum specification"},{"name":"pycountry","license":"LGPL-2.1","note":"ISO-3166 country metadata"}],"risk_signals":{"high_risk_jurisdiction":{"dimension":"jurisdiction","severity":"high","weight":45},"country_mismatch":{"dimension":"consistency","severity":"high","weight":35},"virtual_iban_issuer":{"dimension":"issuer","severity":"medium","weight":22},"bank_not_resolved":{"dimension":"resolution","severity":"low","weight":15},"non_sepa":{"dimension":"reachability","severity":"low","weight":10},"bank_sanctions_potential_match":{"dimension":"advisory","severity":"advisory","weight":0}},"high_risk_jurisdictions":["AF","BF","BY","CD","CU","HT","IR","KP","ML","MM","MZ","NG","RU","SD","SN","SS","SY","TZ","VE","YE","ZA"],"virtual_iban_issuers":["Airwallex","Currencycloud","Mercury","Modulr","Monese","Monzo","N26","Payoneer","Paysera","Revolut","Starling Bank","Wise (TransferWise)","bunq"],"limits":["IBAN verification is NOT proof the account exists or who owns it (no Confirmation-of-Payee / name matching — requires a paid bank API we do not resell)","SEPA flag is country-level, not per-bank EPC scheme participation","bank-name -> sanctions match is ADVISORY ONLY, never a hard sanctioned flag","high-risk jurisdiction list is a conservative AML indicator, refresh as FATF updates land"],"privacy":"the raw IBAN is never stored or logged; only the normalized verdict is returned","disclaimer":"These are automated, OFFLINE bank-account/IBAN verification indicators, NOT a definitive fraud verdict and NOT legal or KYC advice. The result is STRUCTURAL validity (ISO 13616 checksum + per-country format) plus resolution against OPEN registries (schwifty, MIT) plus deterministic risk indicators. It does NOT prove the account EXISTS or that it belongs to any person or company — no Confirmation-of-Payee / account-holder name matching is performed (that requires a paid bank/SEPA API, which we do not resell). Any bank-name sanctions match is ADVISORY ONLY. The input IBAN is not stored or logged."}