Skip to main content

Responses

Shufti returns the Bank Account Verification result in the API response and, if a callback_url is provided, sends the same result to that URL. Select a country to see an accepted and a declined response for it. Countries that support the IBAN Check also show its responses, which carry iban_valid in place of the name match fields.

IBAN Accepted
IBAN Declined

Response Parameters​

ParametersDescription
verification_result.bank_account_verification.account_verifiedType: int
1 when the check passed, 0 when the verification is declined. What a 1 means depends on verification_mode: for an ownership check the account was found and the name is a Match or a Partial Match with the bank's record, except in Thailand, where it means the account exists, and in the Philippines, where it means the account number is correctly formed; for an iban check the IBAN is correctly formed.
verification_data.bank_account_verification.verification_modeType: string
Which check ran: ownership or iban. Always returned. Read this before interpreting account_verified, rather than inferring the check from which fields are present.
verification_data.bank_account_verification.account_holder_nameType: string
The account holder name submitted in the request. Not returned for an iban check, which submits no name.
verification_data.bank_account_verification.iban_validType: int
1 when the IBAN is correctly formed, 0 when it is not. Returned for an iban check only.
verification_data.bank_account_verification.name_match_scoreType: number
The score of the match between the submitted name and the name the bank holds for the account. Depending on the country, the score is a value between 0 and 1, or one of 1, 0.5 and 0. It is null when the bank could not check the name, for example when the account could not be found or the bank only confirmed that the account exists. Returned for an ownership check only.
verification_data.bank_account_verification.name_match_resultType: string
A description of the name match, for example Strong Match, Partial Match or Weak Match. It is null when the bank could not check the name, for example when the account could not be found or the bank only confirmed that the account exists. Returned for an ownership check only.
verification_data.bank_account_verification.currencyType: string
The currency of the bank account.
verification_data.bank_account_verification.bank_nameType: string
The name of the bank the account belongs to. Returned when the data source identifies it.
verification_data.bank_account_verification.bank_addressType: string
The address of the bank the account belongs to. Returned when the data source identifies it.
verification_data.bank_account_verification.payment_scheme_eligibilityType: array
The payment schemes the bank can receive on, for example SEPA. Available for IBAN validation only, and returned when the data source supplies it.
verification_data.bank_account_verification.*The other account details submitted in the request, such as bic, clearing_system_id, identification_value and the account object, are returned as sent. Where one of these was not submitted but the data source supplied it — bic and clearing_system_id on an IBAN check — it is returned as enrichment.
info

name_match_score and name_match_result are omitted from an iban check rather than returned as null. A null would say that a name match was attempted and could not be completed, which is a different and worse answer than the truth: no name was submitted, so none was attempted.