---
updatedAt: 2026-09-18T12:14:33.000Z
agentTools:
  projectIndex: https://docs.sumsub.com/llms.txt
---

# Get Payment Source check results for action

# Overview

Use this method to retrieve the latest payment source check results performed for a given [applicant action](https://docs.sumsub.com/sumsub/docs/applicant-actions).

During this check, the payment source provided by the applicant — such as a bank card, bank statement, e-wallet, or crypto wallet — is analyzed: its details are extracted, risk is scored, and the resulting verdict is returned.

<Callout icon="📘" theme="info">
  ### Note

  To retrieve the payment source check results for a given applicant, use [this endpoint](https://docs.sumsub.com/sumsub/reference/get-payment-source-check-results-for-applicant) instead.
</Callout>

## Required permissions

To use this method, your [app token](https://docs.sumsub.com/sumsub/docs/app-tokens) must have the **View check results** [permission](https://docs.sumsub.com/sumsub/docs/user-roles#permissions).

# Request example

```curl
curl -X GET \
     'https://api.sumsub.com/resources/api/applicantActions/69fc75a8dd66c3773c000000/checks/latest?type=PAYMENT_SOURCE' \
     -H 'X-App-Token: <your-app-token>' \
     -H 'X-App-Access-Sig: <your-signature>' \
     -H 'X-App-Access-Ts: <unix-timestamp>'
```

# Response explained

The response represents a singleton list of `checks` containing the latest payment source verification result performed for the given applicant action.

<Callout icon="📘" theme="info">
  ### Note

  All attributes below are nullable.
</Callout>

## Root variables

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Type
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `answer`
      </td>

      <td>
        String
      </td>

      <td>
        Payment source check answer:

        - `GREEN` — no risks found.
        - `RED` — risks found.
      </td>
    </tr>

    <tr>
      <td>
        `checkType`
      </td>

      <td>
        String
      </td>

      <td>
        Indicates this is a `PAYMENT_SOURCE` type of check.
      </td>
    </tr>

    <tr>
      <td>
        `createdAt`
      </td>

      <td>
        Date
      </td>

      <td>
        Date and time of the latest payment source check result (for example, `2026-05-07 11:21:13`).
      </td>
    </tr>

    <tr>
      <td>
        `id`
      </td>

      <td>
        String
      </td>

      <td>
        Unique identifier of the check.
      </td>
    </tr>

    <tr>
      <td>
        `paymentSourceCheckInfo`
      </td>

      <td>
        [Object](#paymentsourcecheckinfo-attributes)
      </td>

      <td>
        Payment source check data
      </td>
    </tr>
  </tbody>
</Table>

## `paymentSourceCheckInfo` attributes

| Field           | Type                                | Description                                                              |
| :-------------- | :---------------------------------- | :----------------------------------------------------------------------- |
| `extractedInfo` | [Object](#extractedinfo-attributes) | Information extracted from the payment source provided by the applicant. |
| `riskCheck`     | [Object](#riskcheck-attributes)     | Risk assessment results of the payment source.                           |

## `extractedInfo` attributes

| Field                       | Type   | Description                                                                                                                                                                    |
| :-------------------------- | :----- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `type`                      | String | Payment source type.<br /><br />Possible values: `bankCard`, `bankStatement`, `eWallet`, `cryptoWallet`.                                                                       |
| `institutionName`           | String | Name of the institution that issued the payment method (for example, `revolut`, `binance pay`, `skrill`).                                                                      |
| `institutionNameEn`         | Object | Institution name transliterated into English.<br /><br />Includes only the `value` string, which contains the English (transliterated) version of the original value.          |
| `fullName`                  | String | Name of the payment method owner.                                                                                                                                              |
| `fullNameEn`                | Object | Payment method owner name transliterated into English.<br /><br />Includes only the `value` string, which contains the English (transliterated) version of the original value. |
| `country`                   | String | Three-letter country code (ISO 3166-1 alpha-3) associated with the payment method.                                                                                             |
| `accountIdentifier`         | String | Bank account number, e-wallet identifier, or bank card number associated with the payment method.                                                                              |
| `iban`                      | String | International Bank Account Number (IBAN) associated with the payment method.                                                                                                   |
| `nationalBankAccountNumber` | String | National bank account number associated with the payment method.                                                                                                               |
| `nationalBankCode`          | String | National bank code (for example, BLZ, sort code, routing number) associated with the payment method.                                                                           |
| `email`                     | String | Email address associated with the payment method.                                                                                                                              |
| `phone`                     | String | Phone number associated with the payment method.                                                                                                                               |
| `issuedDate`                | Date   | Date when the payment method was issued.                                                                                                                                       |
| `validUntil`                | Date   | Date until which the payment method is valid.                                                                                                                                  |
| `currencyCode`              | String | Three-letter currency code (ISO 4217) associated with the payment method.                                                                                                      |
| `cryptoChain`               | String | Blockchain network used by the crypto wallet (for example, `eth`, `btc`).                                                                                                      |
| `memo`                      | String | Memo or tag associated with the crypto wallet (used by some cryptocurrencies).                                                                                                 |

## `riskCheck` attributes

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Type
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `type`
      </td>

      <td>
        String
      </td>

      <td>
        Payment source type being assessed. Possible values: `bankCard`, `bankStatement`, `eWallet`, `cryptoWallet`.
      </td>
    </tr>

    <tr>
      <td>
        `answer`
      </td>

      <td>
        String
      </td>

      <td>
        Risk check result for the payment source. Possible values:

        - `GREEN` — no risks found.
        - `YELLOW` — minor risks found.
        - `RED` — high risks found.
      </td>
    </tr>

    <tr>
      <td>
        `bankCardCheckInfo`
      </td>

      <td>
        [Object](#bankcardcheckinfo-attributes)
      </td>

      <td>
        Bank card risk assessment details.<br /><br />Returned when type is `bankCard`.
      </td>
    </tr>

    <tr>
      <td>
        `cryptoWalletCheckInfo`
      </td>

      <td>
        [Object](#cryptowalletcheckinfo-attributes)
      </td>

      <td>
        Cryptocurrency wallet risk assessment details.<br /><br />Returned when type is `cryptoWallet`.
      </td>
    </tr>

    <tr>
      <td>
        `txnPresenceCheckInfo`
      </td>

      <td>
        [Object](#txnpresencecheckinfo-attributes)
      </td>

      <td>
        Transaction presence verification details, including evidence image identifiers and the verification outcome.
      </td>
    </tr>

    <tr>
      <td>
        `error`
      </td>

      <td>
        String
      </td>

      <td>
        Human-readable reason the risk check failed.<br /><br />Returned only when the check could not be completed (for example, an invalid wallet address or a provider that does not support the submitted asset). Truncated to 512 characters.
      </td>
    </tr>
  </tbody>
</Table>

## `bankCardCheckInfo` attributes

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Type
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `answer`
      </td>

      <td>
        String
      </td>

      <td>
        Bank card risk check result. Possible values:

        - `GREEN` — no risks found.
        - `YELLOW` — minor risks found.
        - `RED` — high risks found.
        - `ERROR` — check failed.
        - `IGNORED` — check skipped.
      </td>
    </tr>

    <tr>
      <td>
        `unexpired`
      </td>

      <td>
        String
      </td>

      <td>
        Card expiration check result. Possible values:

        - `GREEN` — the card is not expired.
        - `RED` — the card is expired.
      </td>
    </tr>

    <tr>
      <td>
        `inputData`
      </td>

      <td>
        [Object](#bankcardcheckinfoinputdata-attributes)
      </td>

      <td>
        Card data submitted for the check (card number and expiration date).
      </td>
    </tr>

    <tr>
      <td>
        `riskScoreInfo`
      </td>

      <td>
        [Object](#bankcardcheckinforiskscoreinfo-attributes)
      </td>

      <td>
        Detailed risk scores and sub-check results for the bank card.
      </td>
    </tr>
  </tbody>
</Table>

## `bankCardCheckInfo.inputData` attributes

| Field        | Type   | Description                                                  |
| :----------- | :----- | :----------------------------------------------------------- |
| `number`     | String | Bank card number submitted for the check (typically masked). |
| `validUntil` | Date   | Card expiration date submitted for the check.                |

## `bankCardCheckInfo.riskScoreInfo` attributes

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Type
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `riskScore`
      </td>

      <td>
        Number
      </td>

      <td>
        Overall risk score for the bank card in the range `0–1`. Higher means riskier.
      </td>
    </tr>

    <tr>
      <td>
        `ipRiskScore`
      </td>

      <td>
        Number
      </td>

      <td>
        Risk score associated with the IP address that was used during the transaction (`0–1`).
      </td>
    </tr>

    <tr>
      <td>
        `crossCheck`
      </td>

      <td>
        String
      </td>

      <td>
        Cross-verification result combining all bank card sub-checks. Possible values: `GREEN`, `YELLOW`, `RED`, `ERROR`, `IGNORED`.
      </td>
    </tr>

    <tr>
      <td>
        `nameMatch`
      </td>

      <td>
        String
      </td>

      <td>
        Indicates whether the cardholder name matches the applicant data. Possible values: `GREEN`, `YELLOW`, `RED`, `ERROR`, `IGNORED`.
      </td>
    </tr>

    <tr>
      <td>
        `countryMatch`
      </td>

      <td>
        String
      </td>

      <td>
        Indicates whether the card issuer country matches the applicant country. Possible values: `GREEN`, `YELLOW`, `RED`, `ERROR`, `IGNORED`.
      </td>
    </tr>

    <tr>
      <td>
        `highRiskEmailCheck`
      </td>

      <td>
        String
      </td>

      <td>
        Indicates whether the cardholder email is considered high risk. Possible values: `GREEN`, `YELLOW`, `RED`, `ERROR`, IGNORED.
      </td>
    </tr>

    <tr>
      <td>
        `isFreeEmail`
      </td>

      <td>
        Boolean
      </td>

      <td>
        `true` if the cardholder email is from a free provider; `false` otherwise.
      </td>
    </tr>

    <tr>
      <td>
        `unexpired`
      </td>

      <td>
        String
      </td>

      <td>
        Card expiration check result. Possible values:

        - `GREEN` — the card is not expired.
        - `RED` — the card is expired.
      </td>
    </tr>

    <tr>
      <td>
        `countryIpMatch`
      </td>

      <td>
        String
      </td>

      <td>
        Indicates whether the card issuer country matches the IP geolocation country. Possible values: `GREEN`, `YELLOW`, `RED`, `ERROR`, `IGNORED`.
      </td>
    </tr>

    <tr>
      <td>
        `ipCountry`
      </td>

      <td>
        String
      </td>

      <td>
        Country code (ISO 3166-1 alpha-3) derived from the IP geolocation.
      </td>
    </tr>

    <tr>
      <td>
        `emailFirstSeenAt`
      </td>

      <td>
        Date
      </td>

      <td>
        Date and time the cardholder email was first observed.
      </td>
    </tr>

    <tr>
      <td>
        `binInfo`
      </td>

      <td>
        Object
      </td>

      <td>
        BIN (Bank Identification Number) lookup details for the bank card.
      </td>
    </tr>
  </tbody>
</Table>

## `bankCardCheckInfo.riskScoreInfo.binInfo` attributes

| Field        | Type    | Description                                                   |
| :----------- | :------ | :------------------------------------------------------------ |
| `bin`        | String  | Bank Identification Number (the first 6 digits of the card).  |
| `brand`      | String  | Card brand (for example, Visa, Mastercard, American Express). |
| `issuer`     | String  | Name of the bank that issued the card.                        |
| `type`       | String  | Card type (for example, credit, debit).                       |
| `category`   | String  | Card category (for example, classic, gold, platinum).         |
| `country`    | String  | Country of the card issuer (ISO 3166-1 alpha-3).              |
| `bankUrl`    | String  | Website URL of the issuing bank.                              |
| `lat`        | Number  | Latitude of the issuing bank.                                 |
| `lon`        | Number  | Longitude of the issuing bank.                                |
| `virtual`    | Boolean | `true` if the card is a virtual card.                         |
| `prepaid`    | Boolean | `true` if the card is prepaid.                                |
| `commercial` | Boolean | `true` if the card is a commercial (business) card.           |

## `cryptoWalletCheckInfo` attributes

For details of the nested provider-specific structures (`crystalMonitorData`, `chainalysisMonitorData`, `ellipticMonitorData`, `trmLabsMonitorData`, `merkleMonitorData`).

See the `cryptoTxnInfo` attributes section in the [Get transaction information by txnId](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#cryptotxninfo-attributes) reference.

| Field                    | Type                                                                                 | Description                                                                                                                    |
| :----------------------- | :----------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |
| `crystalMonitorData`     | [Object](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#crystalmonitordata-attributes)     | Risk data from Crystal, including the counterparty entity, signals, and a roll-up answer. Returned when sourceType is crystal. |
| `chainalysisMonitorData` | [Object](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#chainalysismonitordata-attributes) | Risk data from Chainalysis (entity/address alert and exposures). Returned when sourceType is chainalysis.                      |
| `ellipticMonitorData`    | [Object](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#ellipticmonitordata-attributes)    | Risk data from Elliptic: wallet-exposure analysis and transfer screening. Returned when sourceType is elliptic.                |
| `trmLabsMonitorData`     | [Object](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#trmlabsmonitordata-attributes)     | Risk data from TRM Labs: wallet screening and transfer screening. Returned when sourceType is trmLabs.                         |
| `merkleMonitorData`      | [Object](https://docs.sumsub.com/sumsub/reference/get-transaction-information-by-txnid#merklemonitordata-attributes)      | Risk data from Merkle Science: wallet screening and transfer screening. Returned when sourceType is merkle.                    |
| `explorerInfo`           | Object                                                                               | Blockchain explorer information for the wallet address.                                                                        |

## `txnPresenceCheckInfo` attributes

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Field
      </th>

      <th>
        Type
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        imageIds
      </td>

      <td>
        Array of integers
      </td>

      <td>
        Identifiers of the evidence images submitted for the transaction-presence check (for example, screenshots of the transaction).
      </td>
    </tr>

    <tr>
      <td>
        answer
      </td>

      <td>
        String
      </td>

      <td>
        Transaction-presence verification result. Possible values:

        - `GREEN` — transaction confirmed.
        - `YELLOW` — inconclusive.
        - `RED` — transaction not confirmed.
        - `ERROR` — check failed.
        - `IGNORED` — check skipped.
      </td>
    </tr>
  </tbody>
</Table>

# Response examples

If the request is successfully sent and processed, you will get a response like the following:

```json
{
  "checks": [
    {
      "answer": "RED",
      "checkType": "PAYMENT_SOURCE",
      "createdAt": "2026-05-07 11:21:13",
      "id": "53c81f45-7b28-4cb5-9c63-f3ff12d00000",
      "paymentSourceCheckInfo": {
        "riskCheck": {
          "type": "cryptoWallet",
          "answer": "RED",
          "cryptoWalletCheckInfo": {
            "crystalMonitorData": {
              "answer": "RED",
              "blockchains": [
                "eth"
              ],
              "counterparty": {
                "address": null,
                "entity": {
                  "globalId": 90903,
                  "grade": null,
                  "nTx": null,
                  "name": "Bybit Thief 2025",
                  "slug": "Bybit-Thief-2025",
                  "subtype": null,
                  "type": "stolen_coins",
                  "country": null,
                  "currencyBasic": null,
                  "currency": null
                },
                "blocklist": false,
                "received": 436013393641,
                "sent": 410659552191,
                "riskScore": 1,
                "signals": {
                  "received": {
                    "atm": 0,
                    "dark_market": 0,
                    "child_exploitation": 0,
                    "dark_service": 0,
                    "exchange_licensed": 0,
                    "exchange_unlicensed": 0,
                    "p2p_exchange_licensed": 0,
                    "p2p_exchange_unlicensed": 0,
                    "enforcement_action": 0,
                    "exchange_fraudulent": 0,
                    "gambling": 0,
                    "illegal_service": 0,
                    "marketplace": 0,
                    "miner": 0,
                    "mixer": 0,
                    "payment": 0,
                    "ransom": 0,
                    "scam": 0,
                    "stolen_coins": 1,
                    "wallet": 0,
                    "terrorism_financing": 0,
                    "liquidity_pools": 0,
                    "sanctions": 0,
                    "seized_assets": 0,
                    "other": 0,
                    "exchange_mlrisk_high": null,
                    "exchange_mlrisk_low": null,
                    "exchange_mlrisk_moderate": null,
                    "exchange_mlrisk_veryhigh": null,
                    "exchange": null,
                    "trusted_exchange": null,
                    "p2p_exchange_mlrisk_high": null,
                    "p2p_exchange_mlrisk_low": null
                  },
                  "sent": {
                    "atm": 0,
                    "dark_market": 0,
                    "child_exploitation": 0,
                    "dark_service": 0,
                    "exchange_licensed": 0,
                    "exchange_unlicensed": 0,
                    "p2p_exchange_licensed": 0,
                    "p2p_exchange_unlicensed": 0,
                    "enforcement_action": 0,
                    "exchange_fraudulent": 0,
                    "gambling": 0,
                    "illegal_service": 0,
                    "marketplace": 0,
                    "miner": 0,
                    "mixer": 0,
                    "payment": 0,
                    "ransom": 0,
                    "scam": 0,
                    "stolen_coins": 1,
                    "wallet": 0,
                    "terrorism_financing": 0,
                    "liquidity_pools": 0,
                    "sanctions": 0,
                    "seized_assets": 0,
                    "other": 0,
                    "exchange_mlrisk_high": null,
                    "exchange_mlrisk_low": null,
                    "exchange_mlrisk_moderate": null,
                    "exchange_mlrisk_veryhigh": null,
                    "exchange": null,
                    "trusted_exchange": null,
                    "p2p_exchange_mlrisk_high": null,
                    "p2p_exchange_mlrisk_low": null
                  }
                },
                "tags": null,
                "type": "entity"
              },
              "assetSupported": true
            }
          }
        }
      }
    }
  ]
}
```

If no Payment Source check has been performed, an empty `checks` array is returned.

```json
{
  "checks": []
}
```

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

```json
{
  "code": 400,
  "correlationId": "e4491e56d5f23c319b4f901e0c8e4eb6",
  "description": "Invalid id '123456789'"
}
```

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "sumsub-api",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://api.sumsub.com"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "apiKey",
        "name": "X-App-Token",
        "in": "header",
        "x-default": ""
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/resources/api/applicantActions/{actionId}/checks/latest?type=PAYMENT_SOURCE": {
      "get": {
        "description": "",
        "responses": {
          "200": {
            "description": ""
          }
        },
        "parameters": [
          {
            "in": "path",
            "name": "actionId",
            "schema": {
              "type": "string"
            },
            "required": true,
            "description": "Unique applicant action identifier in the Sumsub system.<br><br>You can get this identifier in response to [action submission](https://docs.sumsub.com/sumsub/reference/create-applicant-action) or by calling [this API method](https://docs.sumsub.com/sumsub/reference/get-applicant-actions)."
          }
        ],
        "operationId": "get_resources-api-applicantactions-actionid-checks-latest-type-payment-source",
        "summary": "Get Payment Source check results for action"
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```