How to use International Account Verification

The International Account Verification API allows you to verify whether a bank account (IBAN or local account number) belongs to a specific individual or business. This helps reduce failed payouts, prevent fraud, and support compliance checks in over 30 countries.

  • Verify account ownership globally: Confirm if the account belongs to the named user.
  • Reduce payment errors: Prevent failed or misrouted transactions.
  • Strengthen KYC/AML compliance: Add a lightweight ownership check across markets.
  • Protect against fraud: Validate that users control the payout account provided.

This guide explains how the product works, supported markets, expected responses, and how to get started with the API.

API Refernce

How It Works

The International Account Verification API checks whether the provided account number (or IBAN) belongs to the named individual or business. The process works by matching the name you provide with the one registered on the account, via direct bank integrations or verified third-party sources.

When using name-based verification, we return one of three match statuses based on the similarity between the provided name and the name associated with the account:

Match: The name on the account exactly matches the provided name and the account ownership has been successfully verified. In API responses this is returned as "account_ownership_verified": true

No match: The name does not match the account holder’s name. A no match is determined when the similarity score between the provided name and the account owner's name is below 0.7. In API responses this is returned as "account_ownership_verified": false

Partial match: The name is similar but not an exact match. Partial matches indicate a high likelihood of ownership. Where "account_ownership_verified" is returned as 'false' we check for partial matches;

  • If the similarity score is equal to or above the threshold (0.7), it is considered a partial match
  • The scoring is on a scale from 0-1, with 0 being no match and 1 being the highest similarity between the two names provided
  • Anything below the threshold will result in 'no match' to the 'match' attribute and this can be confirmed that the account is not verified
  • The API response will return "matching: partial" along with the match score

Account holder name

Whether the account holder name is returned depends on the country and data provider.

  • The name is always used for verification, but may not be shared in the response due to local privacy rules.
  • In some cases, you’ll receive a masked version (e.g., J*** S****).
  • In others, the name may be fully omitted, even if a match is found - see ‘Country coverage’ below for clarification on what will be returned by country.

Country coverage

RegionCountryCoverageAccount typeIs account holder name returned?Currency restrictionResponse Time
AmericasUS (Analytics-based)All ABA-registered institutionsUnknownRestrictedNone1–10 seconds
AmericasUS (Logic-based)All ABA-registered institutionsUnknownNot validatedNone1–10 seconds
AmericasUS (Direct-to-FI)All RTP Network Participating FIs (~483 banks)UnknownNo name/ownership checkNone1–10 seconds
AmericasBrazil148 major banksRetailYesBRL only5–8 seconds
AmericasMexico129 major banksRetailYesMXN only5–10 seconds
AmericasArgentina63 major banksRetailYesARS only2–5 seconds
AmericasUruguay17 major banksRetailMaskedNot specified5–8 seconds
AmericasPeru4 major banksRetailYesNot specified5–8 seconds
AmericasChile (coming soon)20 major banksRetailYesNot specified5–8 seconds
AmericasColombia (coming soon)25 major banksRetailYesNot specified5–8 seconds
AmericasEcuador (coming soon)13 major banksRetailYesNot specified5–8 seconds
EuropeUK~393 institutions (CoP)RetailPartial onlyGBP only2–5 seconds
EuropeAustriaComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeBelgiumAll financial institutionsBothYesEUR only5–8 seconds
EuropeCroatiaComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeEstoniaComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeFinlandComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeFranceAll financial institutionsBothYes for partial onlyEUR only5–8 seconds
EuropeGermanyComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeGreeceComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeIrelandComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeItalyAll financial institutionsBothYes for partial onlyEUR only5–8 seconds
EuropeLatviaComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeLithuaniaComing soonBothYes for partial onlyPartial onlyEUR only5–8 seconds
EuropeLuxembourgComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeMaltaComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeNetherlandsAll financial institutionsBothYes for partial onlyEUR only5–8 seconds
EuropePolandAll financial institutionsBusiness onlyYesNot specified5–10 seconds
EuropePortugalComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeSlovakiaComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeSloveniaComing soonBothYes for partial onlyEUR only5–8 seconds
EuropeSpainComing soonBothYes for partial onlyEUR only5–8 seconds
Asia-PacificIndia855+ banks (IMPS)RetailYesINR only3–7 seconds
Asia-PacificIndonesia142 major banksRetailYesNot specified2–3 seconds
Asia-PacificVietnam43 major banks (NAPAS)RetailYesVND only2–3 seconds
Asia-PacificNepal23 major banksRetailYes (match_score > 0.8)Not specified2–3 seconds
Asia-PacificPakistan32 major banksRetailYesPKR only2–3 seconds
Asia-PacificChina (Individuals)2,000+ UnionPay institutionsRetailRestrictedNot specified2–3 seconds
Asia-PacificChina (Institutions)141 major banksCorporateYes (exact match)Not specified8–12 seconds
Asia-PacificSouth Korea48 major banksRetailYesKRW only2–3 seconds
Asia-PacificBangladesh3 banksRetailRestrictedNot specified2–3 seconds
Asia-PacificMalaysia37 major banksRetailYesMYR only2–3 seconds
Asia-PacificTurkey50+ banksRetailMaskedTRY only2–5 seconds
Asia-PacificAustralia (coming soon)55 major banksAUD only2–5 seconds
Asia-PacificPhilippinesNot specified1–2 seconds
Middle East & AfricaNigeria40 major banksRetailYesNot specified2–5 seconds
Middle East & AfricaUganda22 major banksRetailYesNot specified2–5 seconds
Middle East & AfricaSouth Africa11 major banksRetailCertainty of existence, not always nameNot specified5–8 seconds

Request data by country

The table below outlines what is required to make a request based on the country you are verifying an account for.

CountryName RequiredRegistration ID RequiredAccount ID TypeAgent Code RequiredNotes / Special Requirements
ArgentinaYesNoCBUNo
Australia (coming soon)YesNoIBeneficiary Account IDBISB code as clearing system ID
AustriaYesVAT / Business Reg. No.IBANNoBusiness only
BangladeshYesNoBeneficiary Account IDBIC
BelgiumYesVAT, Company No. as reg_idIBANNoRegistration ID for business
BrazilYesCPF or CNPJIBANNo
Chile (coming soon)YesRUT as reg_idBeneficiary Account IDBIC or local code
China (individual)Yes (Chinese)NoBeneficiary Account IDNoName in Chinese characters
China (business)YesUniform credit codeBeneficiary Account IDBIC18-char alphanumeric code as registration_id
Colombia (coming soon)YesNoBeneficiary Account IDBIC or local code
CroatiaYesVAT / OIBIBANNo
Ecuador (coming soon)YesNoBeneficiary Account IDBIC or local code
EstoniaYesIBANNo
FinlandYesIBANNo
FranceYesIBANNo
GermanyYesIBANNo
GreeceYesIBANNo
IndiaYesNoBeneficiary Account IDIFSC Code
IndonesiaYesNoBeneficiary Account IDBIC
IrelandYesIBANNo
ItalyYesIBANNo
LatviaYesIBANNo
LithuaniaYesIBANNo
LuxembourgYesIBANNo
MalaysiaYesNoBeneficiary Account IDBIC
MaltaYesIBANNo
MexicoYesNoCLABENo
NepalYesNoBeneficiary Account IDBIC
NetherlandsYesIBANNo
NigeriaYesNoNUBANBIC
PakistanYesNoBeneficiary Account IDBIC
PeruYesNoCCINo
PhilippinesNoBeneficiary Account IDNo
PolandYesIBANNo
PortugalYesIBANNo
SlovakiaYesIBANNo
SloveniaYesIBANNo
South AfricaYesNoBeneficiary Account IDBIC or branch codeBranch code as clearing system ID allowed
South KoreaYesNoBeneficiary Account IDBIC or local code
SpainYesIBANNo
TurkeyYesNoIBANNo
UgandaYesNoBeneficiary Account IDBIC
UKYesNoBeneficiary Account ID or IBANSort code
USYes (given_name and surname)NoBeneficiary Account IDABA/Routing NumberDepends on node type: analytics, logic, or direct-to-FI
UruguayYesNoBeneficiary Account IDBIC
VietnamYesNoBeneficiary Account IDBIC

Sandbox Test Data

To test the API you can use the below mocked data and responses:

Country CodeCountry NameFull NameRegistration IDNational IDCommercial RegUnified NumberAccount Details ValueAccount Details TypeBank Identifier TypeBank Identifier ValueOwnership VerifiedAccount StatusAccount Holder NameError CodeError Message
ARArgentinaLIONEL MESSI----0170032450000643500000ACCOUNT_ID--trueACTIVELIONEL MESSI--
ARArgentinaLION MESSY----0170032450000643500000ACCOUNT_ID--trueACTIVELIONEL MESSI--
ARArgentinaJOHN DOE----0170032450000643500000ACCOUNT_ID--trueACTIVELIONEL MESSI--
ARArgentinaINNOVARTECH S.A----0170032450000643578149ACCOUNT_ID--trueACTIVEINNOVARTECH S.A--
ARArgentinaJOHN DOE----0170032450000643500001ACCOUNT_ID-----ACCOUNT_NOT_FOUNDAccount not found
BDBangladeshSHAKIB AL HASAN----111112222201ACCOUNT_IDBICMTBLBDDHtrueACTIVESHAKIB AL HASAN--
BDBangladeshJOHN DOE----111112222201ACCOUNT_IDBICMTBLBDDHtrueACTIVESHAKIB AL HASAN--
BEBelgiumApple PaymentsBE2283365642---BE15537752378598IBAN--trueACTIVEApple Payments--
BEBelgiumApple CoBE2283365642---BE15537752378598IBAN--trueACTIVEApple Payments--
BRBrazilMONKEY D. LUFFY55.555.555/0056-56---BR5599950505000010000000505C1IBAN--trueACTIVEMONKEY D. LUFFY--
BRBrazilPETROBRAS LTD11.222.333/4444-00---BR1199950505000010000000888C1IBAN--trueACTIVEPETROBRAS LTD--
CNChina周杰伦----6212345678987654321ACCOUNT_ID--trueACTIVE周杰伦--
CNChinaBeijing Apple and Orange Company91111111ABCXYZ1234---321872160000ACCOUNT_IDBICABOCCNBJtrueACTIVEBeijing Apple and Orange Company--
FRFranceAtelier CoFR12949982110---FR7616958000019430150570683IBAN--trueACTIVEAtelier Co--
GBUnited KingdomHARRY POTTER----12345678ACCOUNT_IDCLEARING_ID123456trueACTIVEHARRY POTTER--
GBUnited KingdomS HOLMES----23456789ACCOUNT_IDCLEARING_ID123456trueACTIVESHERLOCK HOLMES--
IDIndonesiaFIRA DIYANKA----1122334455ACCOUNT_IDBICCENAIDJAtrueACTIVEFIRA DIYANKA--
IDIndonesiaJAKARTA CONSTRUCTION----9988776655ACCOUNT_IDBICBRINIDJAtrueACTIVEJAKARTA CONSTRUCTION--
INIndiaDUMMY BENEFICIARY NAME----123456789007ACCOUNT_IDCLEARING_IDALLA0211480trueACTIVEDUMMY BENEFICIARY NAME--
INIndiaNATIONAL CRICKET CLUB----987654321002ACCOUNT_IDCLEARING_IDYESB0000002trueACTIVENATIONAL CRICKET CLUB--
ITItalyPizza HutIT12949982110---IT60X0542811101000000123456IBAN--trueACTIVEPizza Hut--
KRSouth Korea송혜교----11112222321ACCOUNT_IDBICCZNBKRSEtrueACTIVE송혜교--
KRSouth KoreaSONG HYE KYO----11112222321ACCOUNT_IDCLEARING_ID004trueACTIVESONG HYE KYO--
MXMexicoINAKI GODOY----999000000000000505ACCOUNT_ID--trueACTIVEINAKI GODOY--
NGNigeriaDAVID OYELOWO----1234567890ACCOUNT_IDBICGTBINGLAtrueACTIVEDAVID OYELOWO--
NLNetherlandsFinance CoNL234556778B15---NL91ABNA0417164389IBAN--trueACTIVEFinance Co--
NPNepalANIL GURUNG----1234567891234001ACCOUNT_IDBICNICENPKAtrueACTIVEANIL GURUNG--
PKPakistanHASSAN IQBAL----03097524704ACCOUNT_IDBICEASYPAISAtrueACTIVEHASSAN IQBAL--
PKPakistanKAMALA KHAN----PK35HABB0001111222212345IBANBICHABBPKKAtrueACTIVEKAMALA KHAN--
PLPolandStar CoffeePL2246689915---PL63109010160300071219812876IBAN--trueACTIVEStar Coffee--
UGUgandaWINNIE NWAGI----9030012345678ACCOUNT_IDBICEQBLUGKAtrueACTIVEWINNIE NWAGI--
USUnited StatesMELANIE DANIELS----781245633ACCOUNT_IDCLEARING_ID101000019trueACTIVEMELANIE DANIELS--
USUnited StatesDANIEL DANIELS----781245634ACCOUNT_IDCLEARING_ID101000019trueACTIVEMELANIE DANIELS--
VNVietnamPHAM QUYNH----12345678900000ACCOUNT_IDBICVTCBVNVXtrueACTIVEPHAM QUYNH--
VNVietnamHANOI BUSINESS COMPANY----98765432100000ACCOUNT_IDBICVTCBVNVXtrueACTIVEHANOI BUSINESS COMPANY--
MYMalaysiaMICHELLE YEOH----123456789098ACCOUNT_IDBICMBBEMYKLtrueACTIVEMICHELLE YEOH--
UYUruguayGEORGE HILTON----23456789ACCOUNT_IDCLEARING_ID001trueACTIVEGEORGE HILTON--
UYUruguayGERMAINE HILTON----23456790ACCOUNT_IDBICBROUUYMMtrueACTIVEGERMAINE HILTON--
PEPeruSILVANA ARIAS----12345678909876543212ACCOUNT_ID--trueACTIVESILVANA ARIAS--
TRTurkeyHALET CAMBEL----TR480001002110000028685254IBAN--trueACTIVEHALET CAMBEL--
ZASouth AfricaCHAD LE CLOS----9999978653ACCOUNT_IDCLEARING_ID198765trueACTIVECHAD LE CLOS--
THThailandKASIKORN RUKTHAI----1111111111ACCOUNT_IDBICADVNTHB1trueACTIVEKASIKORN RUKTHAI--
SASaudi ArabiaABBAS AL-SHEIKH-1234567890--SA2810000011100000461309IBAN--trueACTIVEABBAS AL-SHEIKH--
SASaudi ArabiaHALIMA AL-SHEIKH--2345682234-SA2810100011100000461311IBAN--trueACTIVEHALIMA AL-SHEIKH--
SASaudi ArabiaAHMED MUSTAPHA---1234631235SA2810100011100000461317IBAN--trueACTIVEAHMED MUSTAPHA--
SASaudi Arabia--1106972886--SA2810000011100000461309IBAN--trueACTIVEAdam Ahmed--
SASaudi Arabia---1010093978-SA2810000011100000461309IBAN--trueACTIVEBusiness Owner--
SASaudi Arabia----7112233445SA2810000011100000461309IBAN--trueACTIVEUnified Business--
SASaudi Arabia--1106972886--SA1300GQO2OTVMEJ3885Y3TOIBAN--falseBLOCKEDAdam Ahmed--
SASaudi Arabia---1010093978-SA45449TBAYLQRPN96LSXPI4IBAN--falseBLOCKEDBusiness Owner--
SASaudi Arabia---1010032264-SA2810000011100000461309IBAN--trueACTIVEAnother Business--
SASaudi Arabia--1234567890--SA3076747147122249133391IBAN--falseCLOSEDClosed Account Holder--
SASaudi Arabia--1234567890--SA4576615857476891197381IBAN--falseIN_LIQUIDATIONLiquidation Account Holder--
SASaudi Arabia--1234567890--SA7665000000124A60749002IBAN-----LEAN_ERRORSystem error occurred
SASaudi Arabia--1234567890--SA82550000000M1795800177IBAN-----BANK_ISSUEBank temporarily unavailable
SASaudi Arabia--1234567890--SA0405000068201235335000IBAN-----UNSUPPORTED_BY_BANKBank verification not supported
SASaudi Arabia--1234567890--SA5080000146608010554454IBAN-----DISABLED_BY_LEANVerification temporarily disabled
AEUnited Arab EmiratesADAM AHMED----AE420260001015819612801IBAN--trueACTIVEADAM AHMED--
AEUnited Arab EmiratesADAM STARK----AE420260001015819612801IBAN--falseACTIVEADAM AHMED--
AEUnited Arab EmiratesADAM SOMETHING----AE420260001015819612801IBAN--trueACTIVEADAM AHMED--
AEUnited Arab EmiratesLYNNA GRAIG TOY----AE970424090886582129014IBAN--trueACTIVELYNNA GRAIG TOY--
AEUnited Arab EmiratesIMA ELINORE SPINKA----AE340176545036785802838IBAN--trueACTIVEIMA ELINORE SPINKA--
AEUnited Arab Emirates--784196710121542--AE620030012285049920001IBAN--trueACTIVEADAM AHMED--
AEUnited Arab Emirates--784-1967-1012154-2--AE620030012285049920001IBAN--trueACTIVEADAM AHMED--
AEUnited Arab Emirates--PN11223344--AE620030012285049920001IBAN--trueACTIVEADAM AHMED--
AEUnited Arab EmiratesABC LIMITED----AE620030012285049920001IBAN--trueACTIVEABC LIMITED--
AEUnited Arab EmiratesABC SOMETHING----AE620030012285049920001IBAN--falseACTIVEABC LIMITED--
AEUnited Arab EmiratesABC LIMIT----AE620030012285049920001IBAN--trueACTIVEABC LIMITED--
AEUnited Arab Emirates---TLCL4206-AE620030012285049920001IBAN--trueACTIVEABC LIMITED--
AEUnited Arab Emirates---TL000004778-AE620030012285049920001IBAN--trueACTIVEABC LIMITED--
AEUnited Arab EmiratesBLOCKED USER----AE810030012459313920001IBAN--falseBLOCKEDBLOCKED USER--
AEUnited Arab EmiratesERROR TEST----AE380030012459313810001IBAN-----LEAN_ERRORSystem error occurred
AEUnited Arab EmiratesBANK ERROR TEST----AE160030011522789920001IBAN-----BANK_ISSUEBank temporarily unavailable
AEUnited Arab EmiratesUNSUPPORTED TEST----AE420500000000028645064IBAN-----UNSUPPORTED_BY_BANKBank verification not supported
AEUnited Arab EmiratesDISABLED TEST----AE100500000000028538649IBAN-----DISABLED_BY_LEANVerification temporarily disabled

Example request for India sandbox test data from table:

curl --location 'https://sandbox.sa.leantech.me/verifications/v1/accounts' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
		"type": "PERSONAL",
    "account_details": {
        "type": "ACCOUNT_ID",
        "value": "123456789007"
    },
    "identifications": [
        {
            "type": "FULL_NAME",
            "value": "DUMMY BENEFICIARY NAME"
        }
    ],
    "bank_identifier": {
        "type": "CLEARING_ID",
        "value": "ALLA0211480"
    },
    "country_code": "IN"
}'