Create applicant

Table of contents

Overview

Use this method to create a new applicant profile of either of the following types:

  • individual — if the applicant is a physical person.
  • company — if the applicant is a legal entity.

In the constructor above, you can see the parameters that can be provided when creating an individual applicant. Find out the specifics of creating a company applicant in the section below.

When creating a new applicant profile, you do not always have to send us pre-filled applicant data, such as the applicant name, date of birth, address, and so on. You only need to send images and get the recognized document data using this method. It is the best way to increase your conversion because rejects of mismatches in names and typos will be excluded.

Each applicant may have several ID documents (as well as additional photos of different documents) attached, such as, for example, an ID card or a passport.

See Applicant life-cycle to view the way an applicant profile goes through from creation to verification.

👍

Tip

  • If you have requirements to perform data cross-validation and have no possibility to do it on your side, use the fixedInfo object to fill data like names, date of birth, and address.
  • When using the fixedInfo object, mind that a verification level specified for a particular applicant should include the Applicant data step.
  • Make sure to save the applicant ID. You may need it for future requests.

Specifics of creating company applicants

When creating a company applicant, make sure to provide a companyInfo object within the request. The companyInfo object attributes are required to properly validate the company data during verification. This information is not mandatory to be added upon creation, but make sure to provide it before requesting a check.

📘

Note

Within the KYB 1.0 flow, companyInfo must be nested inside the info object. As for KYB 2.0, embed companyInfo inside the fixedInfo object. See the request examples below.

companyInfo arguments

The following table explains the companyInfo object attributes representing general data about the company, such as the company name, location and country of registration, legal entity type, contacts, and other details.

FieldTypeRequiredDescription
companyNameStringYesThe name of the company.
registrationNumberStringNoUnique number assigned to the company when it was registered as a legal entity.
countryStringYesAlpha-3 code of the country where the company is legally registered (for example, DEU or GBR).
legalAddressStringNoAddress a legal entity uses to register with a legal authority.
incorporatedOnDateNoDate of company incorporation (format YYYY-mm-dd, e.g. 2001-09-25).
typeStringNoType of legal entity. For example, Private Company Limited by Shares, Public Limited Company, Limited Partnership, and so on.
emailStringNoCompany email address.
phoneStringNoCompany phone number.
controlSchemeStringNoDescription of the control scheme of the company ownership or group of entities.
taxIdStringNoTaxpayer registration number/Code of taxpayer registration.
registrationLocationStringNoCity, town, or another location where the company was registered.
websiteStringNoWebsite URL of the company.
postalAddressStringNoCompany postal address.
beneficiariesArray of objectsNoContains applicantId of beneficiaries and additional information, such as the position and type.
addressObjectNoRepresents the company address.
noUBOsBooleanNoWhen set to true, a company is to be verified with no UBOs specified in the company profile. For example, in case when another legal entity that cannot be a UBO owns this company.
noShareholdersBooleanNoWhen set to true, a company is to be verified with no shareholders specified in the company profile. For example, in case when the verification level settings require a company to have three shareholders but the company has just one.

beneficiaries arguments

The following table describes the beneficiaries array of objects containing applicantId of beneficiaries and additional information, such as their position and type.

FieldTypeRequiredDescription
applicantIdStringYesUnique applicant identifier of the beneficiary in the Sumsub system.

This identifier is a random combination of 24 digits and lowercase Latin characters. It is automatically generated when the applicant is created on the Sumsub side, and can be found in the Dashboard .

If the applicantId is unknown to you, use the Get applicant data (externalUserId) method to fetch it.
positionsArray of stringsNoPositions in the company that the beneficiary is holding.
  • director — appointed to manage the company business and affairs.
  • shareholder — owns shares in the company stock.
  • other — specify a position that does not meet the two above.

⚠️ Not required for KYB 2.0.

typeStringYesType of beneficiary:
  • ubo — ultimate beneficial owner of the company.
  • shareholder — owns shares in the company stock.
  • representative — authorized to act or speak for or in support of the company.
  • director — appointed to manage the company business and affairs.
shareSizeDoubleNoPercentage of ownership if the beneficiary is a shareholder of the company.
inRegistryBooleanNoMatching to a Corporate registry.
  • true — found in the registry.
  • false — not found.
  • null — unknown
imageIdsArray of stringsNoImage IDs of the uploaded document. If the imageIds array contains more than one element, the first one would be the front side and the others — back sides.
applicantObjectNoThe structure to create a new beneficiary.

address arguments

The following table explains available details of the company address.

FieldTypeRequiredDescription
countryStringNoAlpha-3 country code (for example, DEU, GBR, ARG, and so on).
postCodeStringNoAddress postal code.
stateStringNoState, region, district, county or another territorial entity inside a country.
townStringNoCity, town, or another settlement.
streetStringNoStreet name.
subStreetStringNoAdditional information related to the street. This could be a house number or any other details.

Request examples

curl -X POST \
  'https://api.sumsub.com/resources/applicants?levelName=basic-kyc-level' \
  -H 'Content-Type: application/json' \
  -d '{
          "externalUserId": "someUniqueUserId",
          "email": "[email protected]",
          "phone": "+449112081223",
          "fixedInfo": {
              "country": "GBR",
              "placeOfBirth": "London"
          }
      }'
curl -X POST \
  'https://api.sumsub.com/resources/applicants?levelName=kyb-level' \
  -H 'Content-Type: application/json' \
  -d '{
        "externalUserId": "someClientUserIdCompany",
        "info": {
            "companyInfo": {
                "companyName": "COMPANY NAME LTD",
                "registrationNumber": "09688671",
                "country": "GBR",
                "incorporatedOn": "2015-01-01",
                "type": "Private Company Limited by Shares",
                "email": "[email protected]",
                "phone": "+12366020172",
                "website": "example.com"
            }
        },
        "type": "company"
      }'
curl -X POST \
  'https://api.sumsub.com/resources/applicants?levelName=kyb-level' \
  -H 'Content-Type: application/json' \
  -d '{
        "externalUserId": "someClientUserIdCompany",
        "fixedInfo": {
            "companyInfo": {
                "companyName": "COMPANY NAME LTD",
                "registrationNumber": "09688671",
                "country": "GBR",
                "incorporatedOn": "2015-01-01",
                "type": "Private Company Limited by Shares",
                "email": "[email protected]",
                "phone": "+12366020172",
                "website": "example.com"
            }
        },
        "type": "company"
      }'

Response explained

The response is a JSON file representing the applicant profile that you have created (or Sumsub have created for you, for example, via the WebSDK) with augmented and structured information. The existence of some fields depends on the documents submitted for verification and verification regulations.

Below, you can see the response structure, possible content with descriptions, and examples of response:

Root variables

Root variables are the core applicant profile data items. Some of them may include nested attributes and element fields.

FieldTypeDescription
idStringUnique applicant identifier in the Sumsub system (applicantId).

This identifier is a random combination of 24 digits and lowercase Latin characters. It is automatically generated when the applicant profile is created on the Sumsub side.
createdAtDateDate and time (GMT) when the applicant profile was created in the Sumsub system. Format: YYYY-MM-DD HH:MI:SS.
clientIdStringUnique identifier of you as our client in the Sumsub system.

This identifier is assigned to you when you are registered in and get access to the Sumsub system. It usually resembles your name or your company name. clientId is automatically added to the applicant profile when it is created.
inspectionIdStringUnique combination of digits and characters to identify all actions with the applicant’s ID documents. Added automatically when the applicant is created.

This is useful, for example, if you want to find out which document photos were a part of the final verification and made the applicant pass or fail the check. To receive the necessary images, use this method.
externalUserIdStringUnique applicant identifier as registered on your side.

When creating an applicant, you can generate and add the externalUserId manually, or it will be automatically generated and added to the applicant profile by Sumsub.
sourceKeyStringSource key that helps you group clients that send applicants.
infoObjectGeneral applicant information recognized from the documents that Sumsub cross-validates with the applicant data provided (fixedInfo).

Note that info and fixedInfo objects have the same attributes.
fixedInfoObjectGeneral applicant information that is submitted by the applicant via the Web or Mobile SDK or by you via this API method. Sumsub should not change this information but use it to cross-validate with the data recognized from the applicant documents.

Note that info and fixedInfo objects have the same attributes.
emailStringApplicant email address.

It is mandatory if the email verification is required. If not provided, the applicant cannot receive verification status emails.
phoneStringApplicant phone number.

It is mandatory if the phone verification is required.
applicantPlatformStringThe platform from which the applicant registered in the system and/or provided profile data (API, Web, Android, iOS).
ipCountryStringAlpha-3 country code (DEU, GBR, ARE, and so on) of the country that owns the IP address from which the applicant got registered and/or submitted the data.
authCodeStringJWT token to sign in a user.

For more details, refer to WebSDK Settings.
agreementObjectContains information about the applicant consent to submitting and processing the personal data.
requiredIdDocsObjectConfiguration of steps for the applicant to complete verification.

It includes step types (e.g. IDENTITY, SELFIE) and the documents appropriate for each step (e.g. PASSPORT, ID_CARD, RESIDENCE_PERMIT), or necessary data fields to be filled in.

For example, the APPLICANT_DATA step type includes a list of fields the applicant must fill in, so we could proceed with verification.
reviewObjectExplains the details of the current applicant verification status and check result.
langStringTwo-letter code of the language (ISO 639-1 format, for example, en, fr, de) for the SDK and emails sent to the applicant.

The verification results should be displayed to the applicant in this language as well. As a rule, it is detected by the applicant IP address. You can set the language when initializing the SDK (MSDK), or via API when creating an applicant.
typeEnumDefines the applicant type. Added automatically when the applicant is created.

The following entity types are available:
  • individual — for applicants registered and checked as individuals.
  • company — for applicants registered and checked as legal entities.
riskLabelsObjectContains information on the applicant risk labels.
questionnairesArray of objectsIncludes the objects describing questionnaires that the applicant is given to complete during (or after) verification. If the applicant has already filled a questionnaire, you can see the submitted answers in the value fields.
notesArray of objectsIncludes the objects representing notes added to the applicant profile by you or by Sumsub operators.
tagsArray of stringsContains tags that you have created and then assigned to the applicant.
memberOfArray of objectsIncludes data objects with the applicant companies' IDs the beneficiary of which the applicant is and which are registered in the Sumsub system.

info attributes

The following table explains the info object attributes — general applicant information recognized from the documents that Sumsub cross-validates with the applicant data provided (fixedInfo).

Note that info and fixedInfo objects have the same attributes except for idDocs.

FieldTypeDescription
companyInfoObject⚠️ Available only for company applicants provided a company applicant has been created within the KYB 1.0 flow.

The object contains general information about the company, such as the company name, location and country of registration, legal entity type, contacts and other details.
firstNameStringApplicant first name in the original language.
firstNameEnStringAutomatic transliteration of the applicant first name into Latin characters.
middleNameStringApplicant middle name in the original language.
middleNameEnStringAutomatic transliteration of the applicant middle name into Latin characters.
lastNameStringApplicant last name in the original language.
lastNameEnStringAutomatic transliteration of the applicant last name into Latin characters.
legalNameStringLegal name of the company the applicant is related to (UBO or shareholder). You can keep this information and use it for your personal navigation.

Note that the legalName field is not checked and you might need it just in case.
genderStringApplicant gender (M or F). If the gender was not specified in the applicant profile, this field will not be present.
dobDateApplicant date of birth (format YYYY-mm-dd, e.g. 2001-09-25).
placeOfBirthStringApplicant place of birth. This can be a city, a town or another settlement type.
countryOfBirthStringApplicant country of birth. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
stateOfBirthStringState, region, district, county or another territorial entity of birth inside a country, if applicable.
countryStringCountry that issued the applicant's document. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
nationalityStringApplicant country of origin. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
addressesArray of objectsIncludes data objects containing the applicant address details extracted from the PoA documents submitted by the applicant.
tinStringTaxpayer identification number that is unique to each taxpayer.
idDocsArray of objectsIncludes data objects containing information extracted from the applicant documents, which can be useful in cases where a verification has been completed.

companyInfo attributes

The following table explains the companyInfo object attributes representing the company applicant data.

⚠️ This object is only available for company applicants.

FieldTypeDescription
companyNameStringThe name of the company.
registrationNumberStringUnique number that is assigned to the company when it was registered as a legal entity.
countryStringAlpha-3 code of the country where the company is legally registered (for example, DEU, GBR, and so on).
legalAddressStringAddress a legal entity uses to register with a legal authority.
incorporatedOnDateDate of company incorporation (format YYYY-mm-dd, e.g. 2001-09-25).
typeStringType of legal entity. For example, private company limited by shares, public limited company, state-owned enterprise, and so on.
emailStringCompany email address.
phoneStringCompany phone number.
controlSchemeStringDescription of the control scheme of the company ownership or group of entities.
taxIdStringTaxpayer registration number/Code of taxpayer registration.
registrationLocationStringCity, town, or another location where the company was registered.
websiteStringWebsite URL of the company.
postalAddressStringCompany postal address.
beneficiariesArray of objectsContains applicantIds of beneficiaries and additional information such as position and type.
addressObjectRepresents the company address.
noUBOsBooleanWhen set to true, a company is to be be verified with no UBOs specified in the company profile. For example, in case when another legal entity that cannot be a UBO owns this company.
noShareholdersBooleanWhen set to true, a company is to be be verified with no shareholders specified in the company profile. For example, in case when the verification level settings require a company to have three shareholders but the company has just one.

beneficiaries element fields

The following table describes the beneficiaries array of objects containing applicantIds of beneficiaries and additional information such as their position and type.

Mind that the beneficiaries array is available for company applicants only.

FieldTypeDescription
idStringBeneficiary identifier that is autogenerated for all KYB 2.0 beneficiaries when they are added to the company structure.

⚠️ Beneficiary identifier is not the equivalent of applicantId.
applicantObjectApplicant profile data.
applicantIdStringApplicant identifier of the beneficiary in the Sumsub system.
beneficiaryInfoObjectStructure that contains the beneficiary contact data.

⚠️ Available for KYB 2.0 only.
positionsArray of stringsPositions in the company that the beneficiary is holding.
  • director — appointed to manage the company business and affairs.
  • shareholder — owns shares in the company stock.
  • other — a position that does not meet the two above.
typeStringBeneficiary single role in the company control and ownership structure. Possible values:
  • ubo — ultimate beneficial owner of the company.
  • shareholder — owns shares in the company stock.
  • representative — authorized to act or speak for or in support of the company.
  • director — appointed to manage the company business and affairs.
typesArray of stringsBeneficiary roles for the new data structure, when one entity may have multiple roles. Possible values:
  • ubo — ultimate beneficial owner of the company.
  • shareholder — owns shares in the company stock.
  • representative — authorized to act or speak for or in support of the company.
  • director — appointed to manage the company business and affairs.

⚠️ Available for KYB 2.0 only.

shareSizeDoublePercentage of ownership if the beneficiary is a shareholder of the company.
inRegistryBooleanMatching to a Corporate registry.
  • true — found in the registry.
  • false — not found.
  • null — unknown
imageIdsArray of stringsImage IDs represent a document uploaded. If imageIds array contains more than one element, the first one would be the front side and the others — back sides.

beneficiaryInfo attributes

The following table explains the beneficiaryInfo attributes representing the beneficiary contact data.

⚠️ Available for company applicants and KYB 2.0 only.

FieldTypeDescription
firstNameStringFirst name of the beneficiary.
lastNameStringLast name of the beneficiary.
dobDateBeneficiary date of birth.
emailStringBeneficiary email address.
taxResidenceCountryStringCountry where the beneficiary pays taxes. Presented as an alpha-3 code (for example, DEU, GBR, ARG, and so on).

idDocs element fields

The following table explains the data objects representing the details of identity documents provided by the applicant.

FieldTypeDescription
idDocTypeStringType of document that is specified in the level to be provided for verification. For example, PASSPORT, UTILITY_BILL, VEHICLE_REGISTRATION_CERTIFICATE, and so on.

See the list of supported document types for details.
countryStringAlpha-3 code (for example, DEU, GBR, ARG, and so on) of the country where the document was issued.
firstNameStringApplicant first name in the original language as it is in the document.
firstNameEnStringAutomatic transliteration of the applicant first name into Latin characters.
middleNameStringApplicant middle name in the original language as it is in the document.
middleNameEnStringAutomatic transliteration of the applicant middle name into Latin characters.
lastNameStringApplicant last name in the original language as it is in the document.
lastNameEnStringAutomatic transliteration of the applicant last name into Latin characters.
issuedDateDateDate when the identity document was issued (format YYYY-MM-DD).
issueAuthorityCodeStringCode of the ssuing Authority that is in charge of issuing the uploaded document.
validUntilDateDate when the document validity expires.
numberStringUnique registration number of the document.
dobDateApplicant date of birth (format YYYY-mm-dd, e.g. 2001-09-25) as it is specified in the document.
addressObjectIncludes the applicant address details.

address attributes and addresses element fields

The following table explains the address attributes and addresses element fields containing the applicant address details.

FieldTypeDescription
buildingNameStringBuilding name.
flatNumberStringFlat or apartment number.
subStreetStringAdditional information related to the street. This could be a house number or any other details.
subStreetEnStringAutomatic transliteration of the additional information related to the street into Latin characters.
streetStringStreet name.
streetEnStringAutomatic transliteration of the street name into Latin characters.
stateStringState, region, district, county or another territorial entity inside a country.
stateEnStringAutomatic transliteration of the territorial entity into Latin characters.
buildingNumberStringBuilding number.
townStringCity, town, or another settlement.
townEnStringAutomatic transliteration of the settlement into Latin characters.
postCodeStringAddress postal code.
countryStringAlpha-3 country code (for example, DEU, GBR, ARG, and so on).
formattedAddressStringAddress in a human readable format. For example, Design Offices, Philipsbornstraße 2, 30165 Hannover, Germany.

fixedInfo attributes

The following table explains the fixedInfo object attributes — general applicant information that is submitted by the applicant via the Web or Mobile SDK or by you via this API method. Sumsub should not change this information but use it to cross-validate with the data recognized from the applicant documents (info object).

Note that info and fixedInfo objects have the same attributes except for idDocs.

FieldTypeDescription
companyInfoObject ⚠️ Available only for company applicants provided a company applicant has been created within the KYB 2.0 flow.

The object contains general information about the company, such as the company name, location and country of registration, legal entity type, contacts and other details.
firstNameStringApplicant first name in the original language.
firstNameEnStringAutomatic transliteration of the applicant first name into Latin characters.
middleNameStringApplicant middle name in the original language.
middleNameEnStringAutomatic transliteration of the applicant middle name into Latin characters.
lastNameStringApplicant last name in the original language.
lastNameEnStringAutomatic transliteration of the applicant last name into Latin characters.
legalNameStringLegal name of the company the applicant is related to (UBO or shareholder). You can keep this information and use it for your personal navigation.

Note that the legalName field is not checked and you might need it just in case.
genderStringApplicant gender that can be male or female (M or F). If the gender is not specified in the applicant profile, this field is absent.
dobDateApplicant date of birth (format YYYY-mm-dd, e.g. 2001-09-25).
placeOfBirthStringApplicant place of birth. This can be a city, a town or another settlement type.
countryOfBirthStringApplicant country of birth. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
stateOfBirthStringState, region, district, county or another territorial entity of birth inside a country, if applicable.
countryStringApplicant country of birth. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
nationalityStringApplicant country of origin. Presented as an alpha-3 country code (for example, DEU, GBR, ARG, and so on).
addressesArray of objectsIncludes data objects containing the applicant address details provided by the applicant.
tinStringTaxpayer identification number that is unique to each taxpayer.
taxResidenceCountryStringCountry where the applicant pays taxes. Presented as an alpha-3 code (for example, DEU, GBR, ARG, and so on).

agreement attributes

The following table explains the details of the applicant consent to the submitting and processing of personal data.

FieldTypeDescription
createdAtDateDate and time (GMT) when the applicant confirmed his/her consent to the submitting and processing of personal data.
sourceStringSpecifies the source from which the applicant confirmed the agreement (WebSDK, MSDK).

requiredIdDocs attributes

The requiredIdDocs object represents the configuration of steps for the applicant to complete verification. It includes a set of required documents and data to provide.

FieldTypeDescription
videoIdentBooleanSpecifies if the video identification is required (true) or not required (false) to pass verification.
docSetsArray of objectsIncludes the objects representing specific document sets and their attributes.
excludedCountriesArray of stringsCountries (in alpha-3 country code, for example, DEU, GBR, ARG, etc.) that are excluded from the list of supported.
kybSettingsObjectIncludes the thresholds of ownership share (shareholderThreshold and uboThreshold) that are used to identify the types of company beneficiaries.
  • If shareholderThreshold is less and uboThreshold is greater than the ownership percentage, then the individual is a shareholder.
  • If the ownership percentage is greater than or equal to the uboThreshold, then the individual is a UBO.
Companies are always classified as shareholders.

docSets element fields

The following table explains the element fields of the docSets array representing specific document sets and their attributes.

FieldTypeDescription
idDocSetTypeStringHuman-readable identifier of the document set type, for example, IDENTITY, SELFIE, PROOF_OF_RESIDENCE, and so on.
fieldsArray of objectsIncludes the objects describing the document data fields that should be filled with personal information to verify the applicant.

Each object contains the following attributes:
  • name (String) — the field name, for example, firstName, lastName, email, and so on.
  • required (Boolean) — true if the field is required for verification, false if not (still, it can be optionally filled in the SDK).
typesArray of stringsIncludes the types of documents that are required for a particular idDocSetType to pass verification.
videoRequiredStringMethod of passing the document upload step that can be set up when configuring a verification level.
  • disabled — selfie with a document.
  • enabled — video selfie with a phrase.
  • photoRequired — web camera photo (still face image).
  • passiveLivenessliveness check.
  • docapture — enables the camera for the steps with ID documents.
captureModeStringThis mode is applied in case the docapture method is used (see the table row above).
  • manualAndAuto — allows both to automatically capture the photo of a document when the camera is initialized, and for the applicant to hit a button to take a photo.
  • manualOnly — allows only manually hitting a button to take a photo.
uploaderModeStringThis mode is applied in case the docapture method is used.
  • always — always allows uploading a ready-made photo instead of using a camera.
  • never — does not allow uploading a ready-made photo.
  • fallback — allows uploading a ready-made photo only if a camera is not available.
questionnaireDefIdStringIdentifier of the questionnaire that is added to the verification level and is to be or has already been filled by the applicant.

review attributes

The following table explains the review object attributes that represent the details of the current applicant verification status and check result.

FieldTypeDescription
reviewIdStringUnique identifier of the applicant profile review in the Sumsub system.
levelNameStringName of the verification level the applicant has to go through.
attemptIdStringUnique identifier of the current verification attempt.

Applicants may initiate several attempts to get verified if, for example, they failed once or changed/added the documents, or you could change the verification level to start another check.
attemptCntIntegerCounting number of the current verification attempt on the same verification level.
elapsedSincePendingMsIntegerElapsed time since the applicant verification passed to the pending status.
createDateDateDate and time (UTC) when the applicant profile was created in the Sumsub system.
reviewDateDateDate and time (UTC) when the current applicant check was completed.
reviewResultObjectContains extra details of the applicant verification result.
reviewStatusStringIndicates the applicant review status.

reviewResult attributes

The following table explains the reviewResult attributes representing the applicant verification result details.

FieldTypeDescription
reviewAnswerStringExplains the review result.
  • GREEN — the applicant is approved.
  • RED — the applicant is declined.
rejectLabelsArray of stringsIncludes one or more reasons for rejection. The field is available if reviewAnswer returns RED.

For more details, see Temporary rejection and Final rejection clarification.
reviewRejectTypeStringIndicates the type of rejection.
  • FINAL — final rejection in case of major violations. For example, an attempt of fraud was detected during identification, the applicant is found in the list of persons under sanctions, and so on. The applicant rejected with a final rejection status will not be able to resubmit the documents for verification.
  • RETRY — temporary rejection in case of minor violations. For example, a name or address mismatch, incorrect TIN was provided, and so on. A temporary rejected applicant is sent a resubmission request. Thus the applicant has a chance to upload new documents or resubmit correct data.

For more details, see Temporary rejection and Final rejection clarification.
clientCommentStringHuman-readable comment that explains the reasons for rejection in detail, and that must not be shown to the applicant.
moderationCommentStringHuman-readable comment that explains the reasons for rejection in detail, and that can be shown to the applicant.
buttonIdsArray of stringsButton identifiers that have been used for applicant rejection.

A specific buttonId is automatically assigned to each rejection. For more details, see Temporary rejection and Final rejection clarification.

questionnaires element fields

The following table includes the data objects explaining the questionnaires that the applicant is given to complete during (or after) verification. If the applicant has already filled in a questionnaire, in the value fields, you can see the answers provided and the score assigned to them.

FieldTypeDescription
idStringUnique identifier of the questionnaire. You give this ID to the questionnaire when creating it.
sectionsObjectIncludes the objects each of those is a separate group of questions added to the questionnaire.

A section object has an ID representing the section given when the questionnaire was created. Each section consists of items (single questions), and has its own score based on the score of the items included.
scoreDoubleWhen setting up a questionnaire, you have the option to set up the risk scoring. It means that you can add a value to each possible answer. When the applicant selects this answer, the assigned value is added to the score. You can set up the score for the following question types: dropdown, checkboxes, multiple choice.

The section score depends on the score values given to the items it contains. Upon completion of the questionnaire, the system sums up the section score values which results in the entire questionnaire score.

📘

Note

Each questionnaire ID attribute should be unique. If you intend to change the questionnaire structure, IDs should not be reused.

sections element fields

The following table describes the sections attributes.

NameTypeDescription
idStringUnique section identifier.
conditionStringCondition that makes a section visible, depending on the value of the specified sectionId.itemId={options.value}.
itemsObjectIncludes the objects each of those stands for a single question added to the questionnaire, and has an ID—item identifier—representing this question.

items element fields

The items object contains internal objects each of those stands for a single question added to the questionnaire, and has the attributes described in the table below.

FieldTypeDescriptionSupported values
idStringUnique item identification number.Any unique item identifier.
conditionStringCondition that makes the item show up.sectionId.itemId={options.value} ( Example: 1-Section.1-2=someValue )
valueStringContains the value that represents an answer to a question.Any string value.
valuesArray of stringsContains the values that represent multiple answers to a question (e.g. for checkboxes).Any string values.
scoreDoubleScore that is an estimation of the sum of all answers in one question.Double value.
dataScoresArray of objectsCompartmentalized information about risk scoring for each answer (for example, a question may have multiple answers to choose from in the checkboxes).Each object includes the following:
  • value — represents the given answer.
  • score — represents the estimation of the answer.

notes element fields

The following table explains the data objects representing the notes added to the applicant profile by you or Sumsub operators.

FieldTypeDescription
noteStringContains the text of the note added.
moderatorNameStringIdentifier of the one who created the note in the applicant profile.
createdAtDateDate and time (GMT) when the note was created.

memberOf element fields

The following table explains the element fields in the memberOf array which contains the objects representing the companies the beneficiary of which is this applicant, and which are registered in the Sumsub system.

FieldTypeDescription
applicantIdStringUnique identifier of the company registered as an applicant in the Sumsub system.
fullNameStringFull name of the company applicant.

Response examples

{
  "id": "5b594ade0a975a36c9349e66",
  "createdAt": "2020-06-24 05:05:14",
  "clientId": "ClientName",
  "inspectionId": "5b594ade0a975a36c9379e67",
  "externalUserId": "SomeExternalUserId",
  "fixedInfo": {
    "firstName": "Chris",
    "lastName": "Smith"
  },
  "info": {
    "firstName": "CHRISTIAN",
    "firstNameEn": "CHRISTIAN",
    "lastName": "SMITH",
    "lastNameEn": "SMITH",
    "dob": "1989-07-16",
    "country": "DEU",
    "idDocs": [
      {
        "idDocType": "ID_CARD",
        "country": "DEU",
        "firstName": "CHRISTIAN",
        "firstNameEn": "CHRISTIAN",
        "lastName": "SMITH",
        "lastNameEn": "SMITH",
        "validUntil": "2028-09-04",
        "number": "LGXX359T8",
        "dob": "1989-07-16",
        "mrzLine1": "IDD<<LGXX359T88<<<<<<<<<<<<<<<",
        "mrzLine2": "8907167<2809045D<<<<<<<<<<<<<8",
        "mrzLine3": "SMITH<<CHRISTIAN<<<<<<<<<<<<<<"
      }
    ]
  },
  "agreement": {  //present when SDK was initialized with Agreement screen enabled
    "createdAt": "2020-06-24 04:18:40",
    "source": "WebSDK",
    "targets": [
      "By clicking Next, I accept [the Terms and Conditions](https://www.sumsub.com/consent-to-personal-data-processing/)",
      "I agree to the processing of my personal data, as described in [the Consent to Personal Data Processing](https://sumsub.com/consent-to-personal-data-processing/)"
    ]
  },
  "email": "[email protected]",
  "applicantPlatform": "Android",
  "requiredIdDocs": {
    "docSets": [
      {
        "idDocSetType": "IDENTITY",
        "types": [
          "PASSPORT",
          "ID_CARD"
        ]
      },
      {
        "idDocSetType": "SELFIE",
        "types": [
          "SELFIE"
        ]
      }
    ]
  },
  "review": {
    "elapsedSincePendingMs": 115879,
    "elapsedSinceQueuedMs": 95785,
    "reprocessing": true,
    "levelName": "basic-kyc",
    "createDate": "2020-06-24 05:11:02+0000",
    "reviewDate": "2020-06-24 05:12:58+0000",
    "reviewResult": {
      "reviewAnswer": "GREEN"
    },
    "reviewStatus": "completed"
  },
  "lang": "de",
  "type": "individual"
}
{
  "id": "5ecfbe9ad5ea48743f8dd1b8",
  "createdAt": "2020-05-28 13:37:30",
  "clientId": "coolclientid",
  "inspectionId": "5ecfbe9ad5ea48743f8dd1b9",
  "externalUserId": "externalCompanyId",
  "info": {
    "companyInfo": {
      "companyName": "SUMSUB LIMITED",
      "registrationNumber": "1555555",
      "country": "GBR",
      "incorporatedOn": "2018-02-28 00:00:00",
      "type": "ltd",
      "website": "www.sumsub.com",
      "beneficiaries": [
        {
          "applicantId": "5ecfbecad5ea48743f8dd438",
          "positions": [
            "director"
          ],
          "type": "ubo",
          "inRegistry": false,
          "imageIds": null,
          "applicant": null
        }
      ]
    }
  },
  "requiredIdDocs": {
    "docSets": [
      {
        "idDocSetType": "COMPANY",
        "types": [
          "COMPANY_DOC"
        ],
        "steps": [
          {
            "name": "company",
            "minDocsCnt": 1,
            "idDocTypes": [
              "COMPANY_DOC"
            ],
            "idDocSubTypes": null
          },
          {
            "name": "ubos",
            "minDocsCnt": null,
            "idDocTypes": null,
            "idDocSubTypes": null
          }
        ]
      }
    ]
  },
  "review": {
    "elapsedSincePendingMs": 308656,
    "elapsedSinceQueuedMs": 26993,
    "reprocessing": true,
    "createDate": "2020-05-29 12:22:11+0000",
    "reviewDate": "2020-05-29 12:27:19+0000",
    "startDate": "2020-05-29 12:26:52+0000",
    "reviewResult": {
      "reviewAnswer": "GREEN"
    },
    "reviewStatus": "completed"
  },
  "lang": "en",
  "type": "company"
}

Applicant life-cycle

The following is a typical applicant life-cycle:

  1. When you create an applicant, they receive an init status.
  2. After uploading all required documents, the status changes to pending.
  3. You must then let us know that the applicant is ready to be reviewed.
  4. After the verification process is complete, the applicant status changes to completed.
Language
Credentials
Header
Click Try It! to start a request and see the response here!