Pain points

  • Fraud drives operational cost and risk: Impersonators, fraudsters, bots, and scams are rampant in application funnels resulting in increasing fraud and operational costs.
  • Balancing Security With a Smooth User Experience: Redundant identity checks and lack of an adaptive approach that can serve all layers of verification and authentication creates user friction.
  • Global verification quality differs in every market: Need to cost-effectively provide highly accurate verification results that can scale globally so that our customers don’t have to piecemeal a solution.

Value drivers

  1. Actively Protect Against Fraudsters and Bots: Verifying and continuously monitoring identity tokens makes it difficult for malicious actors to join a platform and apply for an account on a platform, creating a positive feedback loop for legitimate users.
  2. Unlock Better Digital Experiences: Account Opening aims for strong verification with minimal friction, with as little as a phone number, resulting in a balance between security and a smooth user experience.
  3. Single, Global Solution to Actively Protect Against Fraudsters and Bots: Continuous identity monitoring and verification make it difficult for malicious actors to operate, creating a more secure environment for legitimate users.

Input parameters

FieldField TypeAccount OpeningDescription
phoneNumberstringRequiredThe number of the mobile phone. Acceptable characters are: alphanumeric with symbols ’+’.
phoneNumber (date last verified)stringThe last date that a possession check was completed for a phone number. The format is YYYY-MM-DD. Acceptable characters are: numeric with symbol ’-‘
verificationTypestringaccountOpeningProve offers different verification methods based on your use case and authorization level required. Available verification methods are: bot verifiedUsers prefill prefillForBusiness accountOpening identityResolution
firstNamestringRequiredThe verified first name of the user.
lastNamestringRequiredThe verified last name of the user.
emailAddressstringThe email address associated with the phone number.
email (date last verified)stringThe date the email address was last verified (e.g., 2023-01-01 ).
addresslist of objects
addressstringThe street address of the individual.
extendedAddressstringThe apartment number or other extended address information.
citystringThe city of the individual.
regionstringThe state or locality of the individual.
postalCodestringThe zip code of the individual. It can be either 5 digits (XXXXX) or ZIP+4 (XXXXX-XXXX).
dateOfbirthstringThe date of birth associated with the phone number.
nationalIdstringThe user’s national ID, such as the full or last four digits of their SSN.
ipAddressstringThe IP address of the user.
userAgentstringThe user agent of the session of the individual.
avsResultlist of objects
identityIDstring
provePhoneAliasstring
correlationIdstringA unique ID that links all calls for the same flow. This is a crucial field to save for subsequent calls.
clientRequestIdstringYour unique request identifier.
clientCustomerIdstringA client-generated unique ID for a specific customer. This can be used by clients to link calls related to the same customer, across different requests or sessions.
clientHumanIDstringA client-generated unique ID for a specific customer that has been identity proofed. This can be used by clients to link calls related to the same customer, across different requests or sessions. The format of this ID is defined by the client - Prove recommends using a GUID, but any format can be accepted. Do not include personally identifiable information (PII) in this field.
businessNamestringThe legal business name of the business attempting a verification.
authTokenstringA bearer token for use by the Prove client SDK.

Output parameters

FieldField TypeDescriptionAccount Opening
successbooleanTrue if the API call was successful.
phoneNumberstringThe number of the mobile phone.
verifyResultstringThe result of the verification according to the Global Fraud Policy.
assuranceLevelstringProve’s tiered confidence metric, ranging from -1 to 3, that dynamically adapts to user behavior and various authentication keys. It allows for adaptive security policies, meaning you can require different levels of verification for different types of transactions. This is a key attribute of the Prove Key. Possible values are: “AL-1”, “AL0”, “AL1”, “AL2”, “AL3”.
correlationIdstringThe unique ID that Prove generates for the flow. To continue the flow, the field will also be used for each of the subsequent API calls in the same flow - it cannot be reused outside of a single flow.
proveIdstringA globally unique identifier in Prove language that represents a user (or business). If provided to a customer, this ID is “salted” to make it specific to that customer before being shared. It links a user’s keys to their National ID and is the center of our universe linking identity data and events throughout our fabric.
proveKeystring
identityIdstring
clientRequestIDstring
clientHumanIDstringA client-generated unique ID for a specific customer that has been identity proofed. This can be used by clients to link calls related to the same customer, across different requests or sessions. The format of this ID is defined by the client - Prove recommends using a GUID, but any format can be accepted. Do not include personally identifiable information (PII) in this field.
clientCustomerIdstringA client-generated unique ID for a specific customer. This can be used by clients to link calls related to the same customer, across different requests or sessions.
identitylist of objects
firstNamestringThe first name of the individual.
lastNamestringThe last name of the individual.
nationalIdstringThe national identity number of the individual.
dateOfBirthstringThe date of birth of the individual in one of these formats: YYYY-MM-DD, YYYY-MM, or MM-DD. Acceptable characters are: numeric with symbol ’-’.
email(s)list of objects
email1stringThe email address of the customer. Acceptable characters are: alphanumeric with symbols ’@.+’.
email2stringThe email address of the customer. Acceptable characters are: alphanumeric with symbols ’@.+’.
addresslist of objects
addressstringThe street address of the individual.
extendedAddressstringThe apartment number or other extended address information.
citystringThe city of the individual.
regionstringThe state or locality of the individual.
zipCodestringThe zip code of the individual. It can be either 5 digits (XXXXX) or ZIP+4 (XXXXX-XXXX).
business(es)list of objects
businessNamestringThe legal business name.
businessAddresslist of objects
addressstringThe street address of the individual.
extendedAddressstringThe apartment number or other extended address information.
citystringThe city of the individual.
regionstringThe state or locality of the individual.
zipCodestringThe zip code of the individual. It can be either 5 digits (XXXXX) or ZIP+4 (XXXXX-XXXX).
tradeNamestringThe doing business as (DBA) name of the legal business entity.
taxIdstringThe Employee identification Number or Tax Identification Number of the business.
relatedPersonslist of objects
firstNamestringThe first name of the individual.
middlesNamestringThe middle name of the individual.
lastNamestringThe last name of the individual.
titlestringThe title of the related person.
registrationFilingstring
datestringThe date of the registration filing.
registrationTypestringThe type of registration.
regionstringThe state or locality of the business registration.
identityIdstringA unique ID that Prove generates to refer to a specific identity.
verifyResultstringThe result of the Verify process. Possible values are success, pending, and failed. If the Verify result is pending, clients will need to call the Verify Status API to get a result.
possessionResultstringThe result of the possession check. Possible values are pending and not_applicable, based on the possessionType passed in the input. Clients will have to call the Verify Status API to get a result if possessionResult=pending.
successstringThe result of the combination of verifyResult and possessionResult. Possible values are true, pending, and false. The value will be pending until the results of both Verify and Possession are returned or one of them fails, blocking the other.
allowOTPRetrybooleanIf true, the customer can re-enter the OTP up to three times. Code must also be implemented. See client-side SDK guide for more details.