Get bank verification details

❗️

Warning

This API method is experimental and may change or be deprecated in the future. It is not guaranteed to remain stable, and its use may require adjustments over time.

Overview

Use this method to get the results of Bank Account Verification or Penny Drop Verification.

Request example

curl -X GET \
     'https://api.sumsub.com/resources/checks/latest?applicantId=67346d0623c63349989d32bb&type=BANK_DETAILS_CHECK' \
     -H 'accept: application/json'

Response explained

The response represents a singleton list of checks.

Root variables

The root variables are the core BANK_DETAILS_CHECK check result data items. Some of them may include nested attributes and element fields.

FieldTypeDescription
answerStringCheck answer:
  • GREEN — user verification is successfully completed.
  • YELLOW — user verification is currently in progress.
  • RED — user has not passed verification and is rejected.
  • ERROR — user verification is not completed because the service is currently unavailable.
checkTypeStringIndicates that it is a BANK_DETAILS_CHECK check type.
createdAtDateDate and time (UTC, format YYYY-DD-MM HH:MM:SS) of the latest BANK_DETAILS_CHECK check result.
idStringUnique identifier of the check.
inputDocObjectRepresents the data used for the BANK_DETAILS_CHECK check.
extractedDocObjectExternal check source data. It may not be present if the data is not received.
bankDetailsCheckInfoObjectIncludes BANK_DETAILS_CHECK check results.
ekycCheckInfoObjectNon-Doc verification information.
violationsArray of strings Indicates violations that were found:
  • PERSON_IS_MINOR — account holder is minor.

inputDoc attributes

FieldTypeDescription
idDocTypeStringType of the document provided for verification (PROOF_OF_PAYMENT or OTHER).
countryStringAlpha-3 country code (for example, DEU, GBR, ARG, and so on).

extractedDoc attributes

FieldTypeDescription
firstNameStringApplicant first name.
additionalFieldsArray of objectsRepresents additional information about the applicant.

ekycCheckInfo attributes

FieldTypeDescription
countryStringAlpha-3 country code (for example, DEU, GBR, ARG, and so on).
confirmationIdStringConfirmation identifier for oAuth verification.
confirmationTypeStringConfirmation type:
  • otp — Submission should be confirmed via OTP code.
  • oAuth — Applicant should be directed to the external service to proceed with submission.

bankDetailsCheckInfo attributes

FieldTypeDescription
accountDetailsObjectIncludes the objects representing the sender details.
transferInfoObjectIncludes the objects representing the transfer information, refund and beneficiary details.

accountDetails attributes

FieldTypeDescription
personFullNameStringSender full name.
legalAgeBooleanSpecifies whether the account holder is of legal age or is a minor:
  • true — account holder is of legal age.
  • false — account holder is minor.
ibanStringSender IBAN.
accountTypeStringType of the account. Return the code aligned with the ISO 20022:
  • CACC — Current account. Account used to post debits and credits when no specific account has been nominated.
  • CARD — Card account. Account used for credit card payments.
  • CASH — Cash payment. Account used for the payment of cash.
  • LOAN — Loan. Account used for loans.
  • SVGS — Savings. Account used for savings.
  • OTHR — Other. Account not otherwise specified.
bankNameStringSender Bank name.
bankBranchNameStringSender Bank branch name.
bicStringSender Bank BIC.
countryStringSender Bank country. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
creditLimitObjectCredit limit of the account.
balanceDetailsObjectAccount balance details.

creditLimit attributes

FieldTypeDescription
amountDoubleCredit limit amount (for example, 10000.0).
currencyStringCurrency of the amount, returned as a ISO 4217 code (for example, EUR).

balanceDetails attributes

FieldTypeDescription
moneyAmountObjectBalance amount and currency.
balanceTypeStringAccount balance type, returned as the code following the ISO 20022 standard:
  • CLAV — Closing available. Closing balance of amount of money that is at the disposal of the account owner on the date specified.
  • CLBD — Closing booked. Balance of the account at the end of the pre-agreed account reporting period.
  • FWAV — Forward available. Forward available balance of money that is at the disposal of the account owner on the date specified.
  • INFO — Information. Balance for informational purposes.
  • ITAV — Interim available. Available balance calculated in the course of the account servicer's business day, at the time specified, and subject to further changes during the business day.
  • ITBD — Interim booked. Balance calculated in the course of the account servicer's business day, at the time specified, and subject to further changes during the business day.
  • OPAV — Opening available. Opening balance of amount of money that is at the disposal of the account owner on the date specified.
  • OPBD — Opening booked. Book balance of the account at the beginning of the account reporting period.
  • PRCD — Previously closed booked. Balance of the account at the previously closed account reporting period.
  • XPCD — Expected (instant) balance.
  • VALU — Value-date balance.
  • OTHR — Other balance.
lastTransactionDateDateDate and time (UTC, format YYYY-DD-MM HH:MM:SS) of the last transaction.

moneyAmount attributes

FieldTypeDescription
amountDoubleCredit limit amount (for example, 10000.0).
currencyStringCurrency of the amount, returned as ISO 4217 code (for example, EUR).

transferInfo attributes

FieldTypeDescription
transferDetailsObjectIncludes the objects representing the transfer and refund details.
beneficiaryDetailsObjectIncludes the objects representing the beneficiary details.

transferDetails attributes

FieldTypeDescription
paymentIdStringUnique identifier of the payment.
referenceStringUnique reference for the payment from the merchant.
createdAtDateDate and time (UTC, format YYYY-DD-MM HH:MM:SS) of the payment.
amountIntegerPayment amount.
currencyStringPayment currency code, e.g. EUR.
statusStringPayment status:
  • PENDING
  • FAILED
  • RECEIVED
  • UNKNOWN
originalStatusStringDetailed payment status:
  • BANK_REDIRECT
  • DELAYED_AT_BANK
  • AWAITING_CHECKOUT_AUTHORIZATION
  • COMPLETED
  • REFUSED_BY_RISK
  • REFUSED_BY_BANK
  • ERROR_AT_BANK
  • CANCELLED_BY_USER
  • ABANDONED_BY_USER
  • FAILED
  • NOT_RECEIVED
  • RECEIVED
  • UNKNOWN
typeStringTransaction type: OTHER.
refundStatusStringRefund status (returned only if the Penny Drop Refund feature is enabled for your account):
  • CREATED
  • PROCESSING
  • REJECTED
  • COMPLETED
  • FAILED
  • UNKNOWN
originalRefundStatusStringRefund status (returned only if the Penny Drop Refund feature is enabled for your account):
  • REFUND_CREATED
  • REFUND_APPROVED
  • REFUND_PROCESSING
  • REFUND_REJECTED
  • REFUND_CONFIRMED
  • REFUND_FAILED
  • UNKNOWN
refundReferenceStringUnique identifier of the created refund.

beneficiaryDetails attributes

FieldTypeDescription
personFullNameStringBeneficiary full name.
ibanStringBeneficiary IBAN.
bicStringBeneficiary Bank BIC.
countryStringBeneficiary Bank country. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).

Response examples

Penny Drop (PD) verification response examples

If the request is successfully sent and processed, you will get a response with one of the following answers:

  • GREEN — verification is successfully completed.
  • YELLOW — verification is currently in progress.
  • ERROR — verification is not completed because the service is currently unavailable.
{
  "checks": [
    {
      "answer": "GREEN",
      "checkType": "BANK_DETAILS_CHECK",
      "createdAt": "2025-03-09 19:25:07",
      "id": "aa3b1641-cf91-4d19-95e1-62d30d7f401a",
      "inputDoc": {
        "idDocType": "PROOF_OF_PAYMENT",
        "country": "DEU"
      },
      "extractedDoc": {
        "firstName": "Jane Doe",
        "additionalFields": [
          {
            "name": "bank",
            "value": "Volt Mock Bank"
          }
        ]
      },
      "ekycCheckInfo": {
        "confirmationId": "oOp4x5Rm72yeFOx3kfs5FCFv",
        "confirmationType": "oAuth"
      },
      "bankDetailsCheckInfo": {
        "accountDetails": {
          "personFullName": "Jane Doe",
          "iban": "DE53500105177415947516",
          "bankName": "Volt Mock Bank",
          "bankBranchName": "Volt Mock Bank",
          "bic": "COBADEFF",
          "country": "DEU"
        },
        "transferInfo": {
          "transferDetails": {
            "paymentId": "7356dafb-67e2-473c-acb7-baa9d3fd7736",
            "reference": "PNLykibtDB",
            "createdAt": "2025-03-09 19:24:35",
            "amount": 0.1,
            "currency": "EUR",
            "status": "RECEIVED",
            "originalStatus": "RECEIVED",
            "type": "OTHER",
            "refundStatus": "COMPLETED",
            "originalRefundStatus": "REFUND_CONFIRMED",
            "refundReference": "026cefa0-a174-4ca3-a1e6-533a129d9c32"
          },
          "beneficiaryDetails": {
            "personFullName": "Raritex Trade Ltd",
            "iban": "DE89370400440532013000",
            "bic": "COBADEFF",
            "country": "DEU"
          }
        }
      }
    }
  ]
}
{
  "checks" : [ {
    "answer" : "YELLOW",
    "checkType" : "BANK_DETAILS_CHECK",
    "createdAt" : "2025-02-06 09:50:47",
    "id" : "5e5eeaca-3ec0-450b-ad4f-5121813cd096",
    "inputDoc" : {
      "idDocType" : "PROOF_OF_PAYMENT",
      "country" : "DNK"
    },
    "ekycCheckInfo" : {
      "confirmationId" : "Fip2DKtUbkSSuLBmOzpyfAHi",
      "confirmationType" : "oAuth"
    }
  } ]
}
{
  "checks" : [ {
    "answer" : "ERROR",
    "checkType" : "BANK_DETAILS_CHECK",
    "createdAt" : "2025-02-05 12:46:04",
    "id" : "6bf059dc-03d6-4c4c-96d6-d4fec6245def",
    "inputDoc" : {
      "idDocType" : "PROOF_OF_PAYMENT",
      "country" : "DEU"
    },
    "ekycCheckInfo" : { }
  } ]
}

Bank Account Verification (BAV) response examples

If the request is successfully sent and processed, you will get a response with one of the following answers:

  • GREEN — applicant has successfully passed verification.
  • YELLOW — applicant verification is currently in progress.
  • RED — applicant has not passed verification and was rejected.
  • ERROR — applicant verification was not completed because the service is currently unavailable.
{
  "checks": [
    {
      "answer": "GREEN",
      "checkType": "BANK_DETAILS_CHECK",
      "createdAt": "2025-05-18 19:20:59",
      "id": "34fbc1c8-164d-4bcf-b085-7f0323b2e0cf",
      "inputDoc": {
        "idDocType": "OTHER",
        "country": "FIN"
      },
      "extractedDoc": {
        "country": "FIN",
        "firstName": "Mikko Virtanen"
      },
      "ekycCheckInfo": {
        "confirmationId": "st8KmCZMPXog2SnTR75vDLs3",
        "confirmationType": "oAuth"
      },
      "bankDetailsCheckInfo": {
        "accountDetails": {
          "personFullName": "Mikko Virtanen",
          "legalAge": true,
          "iban": "FI3012345600000785",
          "accountType": "CACC",
          "creditLimit": {
            "amount": 10000.0,
            "currency": "EUR"
          },
          "bankName": "S-Pankki",
          "bic": "SPANKFIHXXX",
          "country": "FIN",
          "balanceDetails": {
            "moneyAmount": {
              "amount": 3000.0,
              "currency": "EUR"
            },
            "balanceType": "CLAV",
            "lastTransactionDate": "2025-05-18 19:20:59"
          }
        }
      }
    }
  ]
}
{
  "checks": [
    {
      "answer": "YELLOW",
      "checkType": "BANK_DETAILS_CHECK",
      "createdAt": "2025-06-18 09:20:35",
      "id": "e7b3b71f-5278-4e63-ba17-377377779b0b",
      "inputDoc": {
        "idDocType": "OTHER",
        "country": "FIN"
      },
      "ekycCheckInfo": {
        "confirmationId": "u8M2pnx58JHSCthoSC1o7yu1",
        "confirmationType": "options"
      }
    }
  ]
}
{
  "checks": [
    {
      "answer": "RED",
      "checkType": "BANK_DETAILS_CHECK",
      "createdAt": "2025-05-18 19:20:59",
      "id": "34fbc1c8-164d-4bcf-b085-7f0323b2e0cf",
      "inputDoc": {
        "idDocType": "OTHER",
        "country": "FIN"
      },
      "extractedDoc": {
        "country": "FIN",
        "firstName": "Mikko Virtanen"
      },
      "ekycCheckInfo": {
        "confirmationId": "st8KmCZMPXog2SnTR75vDLs3",
        "confirmationType": "oAuth"
      },
      "bankDetailsCheckInfo": {
        "accountDetails": {
          "personFullName": "Mikko Virtanen",
          "legalAge": false,
          "iban": "FI3012345600000785",
          "accountType": "CACC",
          "creditLimit": {
            "amount": 10000.0,
            "currency": "EUR"
          },
          "bankName": "S-Pankki",
          "bic": "SPANKFIHXXX",
          "country": "FIN",
          "balanceDetails": {
            "moneyAmount": {
              "amount": 3000.0,
              "currency": "EUR"
            },
            "balanceType": "CLAV",
            "lastTransactionDate": "2025-05-18 19:20:59"
          }
        }
      },
      "violations": [
        "PERSON_IS_MINOR"
      ]
    }
  ]
}
{
  "checks": [
    {
      "answer": "ERROR",
      "checkType": "BANK_DETAILS_CHECK",
      "createdAt": "2025-02-05 12:46:04",
      "id": "6bf059dc-03d6-4c4c-96d6-d4fec6245def",
      "inputDoc": {
        "idDocType": "OTHER",
        "country": "FIN"
      },
      "ekycCheckInfo": {}
    }
  ]
}

Failed request example

If the request fails, you will receive an HTTP response containing an error code along with a message explaining the error. For example:

{
  "description": "Applicant with id 67346775989cba6a82b621de not found",
  "code": 404,
  "correlationId": "3b156dad5a2dfe4bec2485b2039f7e64"
}
Language
Credentials
Header
Click Try It! to start a request and see the response here!