Add payment method

Overview

Use this endpoint to add and store an applicant payment method. This helps link applicants to their payment methods (e.g., bank accounts, crypto wallets), which is important for processing inbound Travel Rule messages.

📘

Note

This endpoint is only relevant for existing applicants.

Request examples

Below, you can see the request examples for each available payment method type.

curl -X POST
     'https://api.sumsub.com/resources/applicants/6756c06e40c2f83feed050ef/payments'
     -H 'content-type: application/json'
     -d '{
            "externalId": "id_from_your_system",
            "data": {
              "type": "bankCard",
              "fullName": "John Doe",
              "accountIdentifier": "12345678*4321",
              "validUntil": "2030-12-01"
            }
          }'
curl -X POST
     'https://api.sumsub.com/resources/applicants/6756c06e40c2f83feed050ef/payments'
     -H 'content-type: application/json'
     -d '{
            "externalId": "id_from_your_system",
            "data": {
              "type": "bankAccount",
              "fullName": "John Doe",
              "accountIdentifier": "DE75512108001245126199"
            },
            "institutionInfo": {
              "name": "Deutsche Bank",
              "code": "DEUTDEFFXXX",
              "address": {
                "country": "DEU"
                },
              "issuer": {
                "type": "license"
              }
						}
         }'
curl -X POST
     'https://api.sumsub.com/resources/applicants/6756c06e40c2f83feed050ef/payments'
     -H 'content-type: application/json'
     -d '{
            "externalId": "id_from_your_system",
            "data": {
              "type": "eWallet",
              "subType": "PayPal",
              "accountIdentifier": "A0AAAAA00AAAA"
            }
          }'
curl -X POST
     'https://api.sumsub.com/resources/applicants/6756c06e40c2f83feed050ef/payments'
     -H 'content-type: application/json'
     -d '{
            "externalId": "id_from_your_system",
            "data": {
              "type": "cryptoWallet",
              "cryptoChain": "XRP",
              "currencyCode": "USDT",
              "accountIdentifier": "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
              "memo": "12345678"
            },
            "institutionInfo": {
              "issuer": {
                "type": "license"
              }
            }
          }'
curl -X POST
     'https://api.sumsub.com/resources/applicants/6756c06e40c2f83feed050ef/payments'
     -H 'content-type: application/json'
     -d '{
            "externalId": "id_from_your_system",
            "data": {
              "type": "other",
              "subType": "your_domain_specific_type",
              "accountIdentifier": "ABC123"
            }
          }'

Response explained

The response is a JSON file that represents structured information on the payment method.

FieldTypeDescription
idStringIdentifier of the payment method in the Sumsub system.
externalIdStringIdentifier of the payment method on your side.
createdAtDateDate and time when the payment method was submitted to the Sumsub system. Format YYYY-MM-DD HH-MM-SS, e.g., 2025-07-17 10:37:54.
reviewObjectIncludes the status and other details of the payment method.
dataObjectPayment method data.
institutionInfoObjectIncludes details about the financial institution used by a participant to execute the transaction.

review attributes

FieldTypeDescription
reviewStatusStringIndicates the payment method review status. Possible statuses:
  • init — initiated.
  • pending — pending to be processed.
  • queued — in progress.
  • awaitingUser — user action is required.
  • onHold — assistance from a compliance expert is required.
  • prechecked — initial quick check is done.
  • completed — the check is completed, and the review answer is given whether the payment method is approved or rejected.
createDateDateDate and time (UTC) when the check was launched.

data attributes

FieldTypeDescription
typeStringType of the payment method. Can be one of the following: bankCard, bankAccount, eWallet, cryptoWallet, other.
subTypeStringSubtype of the payment method (could be a domain specific type or a name, e.g., PayPal).
accountIdentifierStringUnique identifier of the account associated with this payment pethod.
fullNameStringFull name of the account holder. Applicable to the bankAccount type.
validUntillDateDate field for the bankCard type indicating the date when the bank card is expired (format yyyy-MM-dd).
currencyCodeStringCode of the currency the wallet holds (USD, GBP, BTC, etc.). Applicable to the cryptoWallet type.
cryptoChainStringCrypto chain name. Specifies the network name to which the token at currencyCode belongs. Empty for native tokens (e.g. for BTC, ETH). For more information, see chain codes. Applicable to the cryptoWallet type.
memoStringOptional field for the cryptoWallet type in blockchain transactions to attach metadata or messages for identification, routing, or compliance purposes.

institutionInfo attributes

FieldTypeDescription
codeStringInstitution code (e.g. BIC).
nameStringInstitution name (e.g., Wells Fargo).
addressObjectInstitution address.
issuerObjectDescribes who issued the payment method within the scope of the current license key. It can be either you or one of your applicants.

issuer attributes

FieldTypeDescription
typeString

Specifies the issuer of the payment method:

  • license — you as a license key owner.
  • applicant — the applicant (individual or company) under the current license.
applicantIdStringIdentifier of the applicant (in the Sumsub system) who issued the payment method. Applicable when issuer.type is set to applicant. Can refer to either a KYB (company) or KYC (individual) applicant.

Response examples

If the request is successfully sent and processed, you will get a response like one of those below.

{
  "id": "6878d282f69224a473d54270",
  "externalId": "6456526565",
  "createdAt": "2025-07-17 10:37:54",
  "review": {
    "reviewStatus": "init",
    "createDate": 1752748674638
  },
  "data": {
    "type": "bankCard",
    "fullName": "John Doe",
    "accountIdentifier": "12345678*4321",
    "validUntil": "2030-12-01"
  }
}
{
  "id": "6878d282f69224a473d54270",
  "externalId": "6456526565",
  "createdAt": "2025-07-17 10:37:54",
  "review": {
    "reviewStatus": "init",
    "createDate": 1752748674638
  },
  "data": {
    "type": "bankAccount",
    "fullName": "John Doe",
    "accountIdentifier": "DE75512108001245126199"
  },
  "institutionInfo": {
    "name": "Deutsche Bank",
    "code": "DEUTDEFFXXX",
    "address": {
      "country": "DEU"
    },
    "issuer": {
      "type": "license"
    }
  }
}
{
  "id": "6878d282f69224a473d54270",
  "externalId": "6456526565",
  "createdAt": "2025-07-17 10:37:54",
  "review": {
    "reviewStatus": "init",
    "createDate": 1752748674638
  },
  "data": {
    "type": "eWallet",
    "subType": "PayPal",
    "accountIdentifier": "A0AAAAA00AAAA"
  }
}
{
  "id": "6878d282f69224a473d54270",
  "externalId": "6456526565",
  "createdAt": "2025-07-17 10:37:54",
  "review": {
    "reviewStatus": "init",
    "createDate": 1752748674638
  },
  "data": {
    "type": "cryptoWallet",
    "cryptoChain": "XRP",
    "currencyCode": "USDT",
    "accountIdentifier": "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
    "memo": "12345678"
  },
  "institutionInfo": {
    "issuer": {
      "type": "license"
    }
  }
}
{
  "id": "6878d282f69224a473d54270",
  "externalId": "6456526565",
  "createdAt": "2025-07-17 10:37:54",
  "review": {
    "reviewStatus": "init",
    "createDate": 1752748674638
  },
  "data": {
    "type": "other",
    "subType": "your_domain_specific_type",
    "accountIdentifier": "ABC123"
  }
}

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

{
  "description": "data.accountIdentifier must not be null",
  "code": 400,
  "correlationId": "cc4616424ce1d7bf5a6cad414e8e76d6"
}
Language
Credentials
Header
Click Try It! to start a request and see the response here!