/kyc endpoint to perform Know Your Customer (KYC) verification tasks for your account holders.
This endpoint can only be used to perform KYC verification for individuals or businesses in the United States.
For more information about KYC verification, see About KYC Verification.
For more information about account holders, see About Account Holders.
Perform KYC verification
Action:POSTEndpoint:
/kyc
Use this endpoint to verify the identity of an account holder in the United States, either a user or a business. You can perform KYC verification on an account holder, provided the following are true:
-
The KYC status of the account holder is
UNVERIFIED,LIMITED, orACTIVE. - The account holder has not been submitted for KYC verification more than twice.
Required fields
In order to perform KYC verification, the user or business resource on which you perform the check must have the following fields configured with valid values:| User Fields Required for KYC | Business Fields Required for KYC |
|---|---|
- first_name (legal first name only, no prefixes)- last_name (legal last name only, no suffixes)- address1 (cannot be a PO Box)- city- state- postal_code- country- birth_date- identifications (nine digits, no delimiters)- email (required in some cases)- phone (required in some cases) | - business_name_legal (128 char max)- business_name_dba (“Doing Business As” or fictitious business name; enter the legal business name in this field if your business does not use a fictitious business name)- office_location (cannot be a PO Box; state field must use a valid state, provincial, territorial, or federal abbreviation)- identifications (nine digits, no delimiters)- incorporation.incorporation_type- incorporation.state_of_incorporation- date_established- proprietor_or_officer- beneficial_owner (maximum of four beneficial owners)- proprietor_is_beneficial_owner (required if the business proprietor or officer is also a beneficial owner)- attestation_consent- attester_name- attestation_date- general_business_description |
Valid state, provincial, territorial, and federal abbreviations
The following list includes all valid two-letter abbreviations for US states, territories, and military (APO/FPO/DPO) addresses. It also includes two-letter abbreviations for Canadian provinces and territories and three-letter abbreviations for supported countries. State, provincial, territorial, and federal abbreviations are case sensitive, and must be in uppercase as they appear in this list:-
AL: Alabama -
AK: Alaska -
AB: Alberta -
AS: American Samoa -
AZ: Arizona -
AR: Arkansas -
AE: Armed Forces -
AA: Armed Forces Americas -
AP: Armed Forces Pacific -
BC: British Columbia -
CA: California -
CAN: Canada -
CO: Colorado -
CT: Connecticut -
DE: Delaware -
DC: District of Columbia -
FL: Florida -
GA: Georgia -
GU: Guam -
HI: Hawaii -
ID: Idaho -
IL: Illinois -
IN: Indiana -
IA: Iowa -
KS: Kansas -
KY: Kentucky -
LA: Louisiana -
ME: Maine -
MB: Manitoba -
MD: Maryland -
MA: Massachusetts -
MI: Michigan -
MN: Minnesota -
MS: Mississippi -
MO: Missouri -
MT: Montana -
NE: Nebraska -
NV: Nevada -
NB: New Brunswick -
NH: New Hampshire -
NJ: New Jersey -
NM: New Mexico -
NY: New York -
NF: Newfoundland -
NC: North Carolina -
ND: North Dakota -
NT: Northwest Territories -
NS: Nova Scotia -
NU: Nunavut -
OH: Ohio -
OK: Oklahoma -
ON: Ontario -
OR: Oregon -
PA: Pennsylvania -
PE: Prince Edward Island -
PR: Puerto Rico -
QC: Quebec -
RI: Rhode Island -
SK: Saskatchewan -
SC: South Carolina -
SD: South Dakota -
TN: Tennessee -
TX: Texas -
USA: United States of America -
UT: Utah -
VT: Vermont -
VI: Virgin Islands -
VA: Virginia -
WA: Washington -
WV: West Virginia -
WI: Wisconsin -
WY: Wyoming -
YT: Yukon Territory
Request body
| Fields | Description |
|---|---|
| business_token string Optional | Specifies the business account holder on which to perform the identity check. Do not pass this field if your request includes the user_token field.Send a GET request to /businesses to retrieve business tokens.Allowable Values: 1–36 chars |
| manual_override boolean Optional | Set to true to designate a user account holder as having passed a verification check without Marqeta performing the check through one of its KYC providers.Use this override when you perform verification through another mechanism, such as an alternative KYC provider or directly with the account holder. You must obtain explicit, written approval from Marqeta before using the manual_override field for KYC verification. This feature is only available to programs that are enabled to perform their own Customer Identification Program (CIP) KYC verification. Consult your Marqeta representative for more information.Allowable Values: true, falseDefault value: false |
| notes string Optional | Notes pertaining to a manual override. This field is returned in the response only when the manual_override field is set to true.Allowable Values: 255 char max |
| reference_id string Optional | Can be specified only if manual_override=true. If you verified a user account holder’s identity by performing a KYC verification outside of the Marqeta platform, you can use the reference_id field to store the reference number returned by that KYC provider.NOTE: When you submit a KYC verification request with manual_override=false, the Marqeta platform performs the verification through one of its KYC providers. If the KYC provider responds with a reference identifier, that identifier is passed to you by way of this field in the response.Allowable Values: 32 char max |
| token string Optional | The unique identifier of the identity check. If you do not include a token, the system will generate one automatically. This token is necessary for use in other API calls, so we recommend that rather than let the system generate one, you use a simple string that is easy to remember. This value cannot be updated. Allowable Values: 1–36 chars |
| user_token string Optional | Specifies the user account holder on which to perform the identity check. Do not pass this field if your request includes the business_token field.Send a GET request to /users to retrieve user tokens.Allowable Values: 1–36 chars Existing user token |
Sample request body
Sample request body for a userJSON
JSON
Response body
| Fields | Description |
|---|---|
| business_token string Conditionally returned | The business account holder on which the identity check was performed. Allowable Values: Existing business token |
| created_time datetime Returned | Time when the KYC verification was performed. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| last_modified_time datetime Returned | Time when the KYC verification was last updated. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| manual_override boolean Conditionally returned | If true, the user account holder is designated as having passed a verification check without Marqeta performing the check.This override is used when verification is performed through another mechanism, such as an alternative KYC provider or directly with the account holder. Allowable Values: true, false |
| notes string Conditionally returned | Notes pertaining to a manual override. This field is included in the response only when the manual_override field is set to true.Allowable Values: 255 char max |
| reference_id string Conditionally returned | If you verified the account holder’s identity by performing a KYC verification outside of the Marqeta platform, you can use the reference_id field to store the reference number returned by that KYC provider. This field is included in the response only when the manual_override field is set to true.NOTE: When you submit a KYC verification request with manual_override=false, the Marqeta platform performs the verification through one of its KYC providers. If the KYC provider responds with a reference identifier, that identifier is passed to you by way of this field in the response.Allowable Values: 32 char max |
| result object Conditionally returned | Contains information about the KYC verification result. Allowable Values: Existing KYC verification object |
| result.codes array of objects Conditionally returned | An array of KYC verification result code objects. Allowable Values: One or more KYC verification result code objects |
| result.codes[].code string Conditionally returned | For any pending or failure outcome, see the User KYC failure codes table, the Outcome reasons for the business table, or the Outcome reasons for individuals associated with a business table.Allowable Values: AddressIssue, DateofBirthIssue, Denied KYC, NameIssue, NoRecordFound, OFACFailure, RiskIssue, SSNIssue, warm address alert |
| result.codes[].message string Conditionally returned | Result code description. Allowable Values: 255 char max |
| result.status string Conditionally returned | KYC verification status. Allowable Values: success, failure, pending |
| token string Conditionally returned | The unique identifier of the identity check. Allowable Values: Existing identity check token |
| user_token string Conditionally returned | The user account holder on which the identity check was performed. Allowable Values: Existing user token |
Sample response body
Sample response body for a userJSON
JSON
List KYC results for a business
Action:GETEndpoint:
/kyc/business/{business_token}
Use this endpoint to retrieve all KYC verification results for a business.
This endpoint supports pagination.
Business KYC outcome reasons (business response)
The following tables describe KYC outcome reasons potentially returned in theoutcome_reasons field of the business result response object when a business is in a pending or failure state. Where possible, they also describe acceptable documents that your customers can submit to resolve pending outcomes.
Outcome reasons for the business
These outcome reasons pertain to the business organization itself.| Outcome Reason and State | Description | Accepted Documents |
|---|---|---|
AddressIssuepending | Missing, invalid, mismatched, or PO Box address. | One of the following documents. Document must show the full business name and address: - Bank statement - Utility bill - Current lease or rental agreement - Insurance policy |
BusinessNameIssuepending | Invalid or mismatched name. | Articles or certificate of incorporation. |
OFACFailurefailure | Business appears on an Office of Foreign Assets Control (OFAC) list. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
RegistrationIssuepending | Business is inactive, not registered, or not in good standing with the Secretary of State; recently reported or not recently updated. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
Sanctions List Non-OFACpending | Business appears on a non-OFAC screening list, bankruptcy, or alert list. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
TINIssuepending | Missing, invalid, or mismatched Tax Identification Number (TIN). | IRS Notice Letter 147C or CP575, or most recent tax return. |
Watchlistfailure | Appears on government watchlist (such as OFAC) or other relevant watchlists. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
Outcome reasons for individuals associated with a business
These outcome reasons pertain to individuals associated with a business: proprietors, business officers, and beneficial owners.| Outcome Reason and State | Description | Accepted Documents |
|---|---|---|
AddressIssuepending | Missing, invalid, mismatched, or PO Box address. | One of the following documents. Document must show the full name and address: - Unexpired state-issued driver’s license or identification card - US Military Identification Card - Utility bill - Bank statement - Current rental or lease agreement - Mortgage statement |
DateOfBirthIssuepending | Invalid or mismatched date of birth. | Unexpired government-issued photo identification that shows name and date of birth: - Driver’s license or state-issued identification card - Passport |
Denied KYCfailure | KYC denied for cardholder | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
NameIssuepending | Invalid or mismatched name. | Unexpired government-issued photo identification that has name and date of birth: - Driver’s license or state-issued identification card - Passport or US passport card |
NoRecordFoundfailure | No records were found for this individual. | As no record was found for this individual, supporting documentation must be provided for each attribute (name, date of birth, address, and SSN): - To verify an individual’s address, provide one of these documents: - Unexpired state-issued driver’s license or identification card - US Military Identification Card - Utility bill - Bank statement - Current rental or lease agreement - Mortgage statement - To verify an individual’s name and date of birth, provide one of these documents: - Driver’s license or state-issued identification card - Passport - To verify an individual’s Social Security Number, provide one of these documents: - Social Security card - Recent W-2 or 1099 showing nine-digit SSN, full name, and address - ITIN card or document showing ITIN approval |
OFACFailurefailure | Appears on an Office of Foreign Assets Control (OFAC) list. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
RiskIssuefailure | Appears on a non-OFAC screening list, bankruptcy, or alert list, or has an insufficient record. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative.failure |
SSNIssuepending | Missing, invalid, or mismatched SSN. | - Social Security card - Recent W-2 or 1099 showing nine-digit SSN, full name, and address - ITIN card or document showing ITIN approval |
warm address alertfailure | Address is a PO box or other post office address, virtual address, UPS store, mail forward, or mail drop. Such addresses are not valid for KYC verification. | One of the following documents. Document must show the full name and valid street address: - US Military Identification Card - Utility bill - Current rental or lease agreement - Mortgage statement |
Watchlistfailure | Appears on government watchlist (such as OFAC) or other relevant watchlists. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
URL path parameters
| Fields | Description |
|---|---|
| business_token string Required | The unique identifier of the business resource for which you want to retrieve KYC verification results. Allowable Values: Existing business token |
URL query parameters
| Fields | Description |
|---|---|
| count integer Optional | The number of resources to retrieve. Allowable Values: 1-10 |
| start_index integer Optional | The sort order index of the first resource in the returned array. Allowable Values: Any integer |
| fields string Optional | Comma-delimited list of fields to return (field_1,field_2, and so on). Leave blank to return all fields.Allowable Values: Comma-delimited list of fields, or blank |
| sort_by string Optional | Field on which to sort. Use any field in the resource model, or one of the system fields lastModifiedTime or createdTime. Prefix the field name with a hyphen (-) to sort in descending order. Omit the hyphen to sort in ascending order.Allowable Values: createdTime, lastModifiedTime, or any field in the resource model |
Response body
| Fields | Description |
|---|---|
| count integer Conditionally returned | Number of resources in the returned array. This field is returned if there are resources in your returned array. Allowable Values: 1-10 |
| data array of objects Conditionally returned | Array of KYC verification response objects. Objects are returned as appropriate to your query. Allowable Values: Valid array of one or more KYC verification response objects |
| data[].business_token string Conditionally returned | The business account holder on which the identity check was performed. Allowable Values: Existing business token |
| data[].created_time datetime Returned | Time when the KYC verification was performed. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| data[].last_modified_time datetime Returned | Time when the KYC verification was last updated. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| data[].manual_override boolean Conditionally returned | If true, the user account holder is designated as having passed a verification check without Marqeta performing the check.This override is used when verification is performed through another mechanism, such as an alternative KYC provider or directly with the account holder. Allowable Values: true, false |
| data[].notes string Conditionally returned | Notes pertaining to a manual override. This field is included in the response only when the manual_override field is set to true.Allowable Values: 255 char max |
| data[].reference_id string Conditionally returned | If you verified the account holder’s identity by performing a KYC verification outside of the Marqeta platform, you can use the reference_id field to store the reference number returned by that KYC provider. This field is included in the response only when the manual_override field is set to true.NOTE: When you submit a KYC verification request with manual_override=false, the Marqeta platform performs the verification through one of its KYC providers. If the KYC provider responds with a reference identifier, that identifier is passed to you by way of this field in the response.Allowable Values: 32 char max |
| data[].result object Conditionally returned | Contains information about the KYC verification result. Allowable Values: Existing KYC verification object |
| data[].result.codes array of objects Conditionally returned | An array of KYC verification result code objects. Allowable Values: One or more KYC verification result code objects |
| data[].result.codes[].code string Conditionally returned | For any pending or failure outcome, see the User KYC failure codes table, the Outcome reasons for the business table, or the Outcome reasons for individuals associated with a business table.Allowable Values: AddressIssue, DateofBirthIssue, Denied KYC, NameIssue, NoRecordFound, OFACFailure, RiskIssue, SSNIssue, warm address alert |
| data[].result.codes[].message string Conditionally returned | Result code description. Allowable Values: 255 char max |
| data[].result.status string Conditionally returned | KYC verification status. Allowable Values: success, failure, pending |
| data[].token string Conditionally returned | The unique identifier of the identity check. Allowable Values: Existing identity check token |
| data[].user_token string Conditionally returned | The user account holder on which the identity check was performed. Allowable Values: Existing user token |
| end_index integer Conditionally returned | Sort order index of the last resource in the returned array. This field is returned if there are resources in your returned array. Allowable Values: Any integer |
| is_more boolean Conditionally returned | A value of true indicates that more unreturned resources exist. A value of false indicates that no more unreturned resources exist.This field is returned if there are resources in your returned array. Allowable Values: true, false |
| start_index integer Conditionally returned | Sort order index of the first resource in the returned array. This field is returned if there are resources in your returned array. Allowable Values: Any integer |
Sample response body
JSON
List KYC results for a user
Action:GETEndpoint:
/kyc/user/{user_token}
Use this endpoint to retrieve all KYC results for a user.
This endpoint supports pagination.
User KYC failure codes
The following table lists KYC failure codes potentially returned in the response when a user does not pass verification. It also includes a list of acceptable documents that your customers can submit to resolve failures.| Failure Code and State | Description | Accepted Documents |
|---|---|---|
AddressIssuefailure | Missing, invalid, mismatched, or PO Box address. | One of the following documents. Document must show the full name and address: - Unexpired state-issued driver’s license or identification card - US Military Identification Card - Utility bill - Bank statement - Current rental or lease agreement - Mortgage statement |
DateOfBirthIssuefailure | Invalid or mismatched date of birth. | Unexpired government-issued photo identification that shows name and date of birth: - Driver’s license or state-issued identification card - Passport |
Denied KYCfailure | KYC denied for cardholder. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
EmailIssuefailure | Invalid, insufficient, mismatched, or other risk signal on provided email address. | Unexpired government-issued photo identification that shows name and date of birth: - Driver’s license or state-issued identification card - US Passport - US Military identification Card - Native American tribal identification card - Government employee identification card - Permanent Resident Alien Card |
NameIssuefailure | Invalid or mismatched name. | Unexpired government-issued photo identification that has name and date of birth: - Driver’s license or state-issued identification card - Passport or US passport card |
NoRecordFoundfailure | No records were found for this individual. | As no record was found for this individual, supporting documentation must be provided for each attribute (name, date of birth, address, and SSN): - To verify an individual’s address, provide one of these documents: - Unexpired state-issued driver’s license or identification card - US Military Identification Card - Utility bill - Bank statement - Current rental or lease agreement - Mortgage statement - To verify an individual’s name and date of birth, provide one of these documents: - Driver’s license or state-issued identification card - Passport - To verify an individual’s Social Security Number, provide one of these documents: - Social Security card - Recent W-2 or 1099 showing nine-digit SSN, full name, and address - ITIN card or document showing ITIN approval |
OFACFailurefailure | Appears on an Office of Foreign Assets Control (OFAC) list. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
PhoneIssuefailure | Invalid, insufficient, mismatched, or other risk signal on provided phone number. | Unexpired government-issued photo identification that shows name and date of birth: - Driver’s license or state-issued identification card - US Passport - US Military identification Card - Native American tribal identification card - Government employee identification card - Permanent Resident Alien Card |
RiskIssuefailure | Appears on a non-OFAC screening list, bankruptcy, or alert list, or has an insufficient record. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
SSNIssuefailure | Missing, invalid, or mismatched SSN. | - Social Security card - Recent W-2 or 1099 showing nine-digit SSN, full name, and address - ITIN card or document showing ITIN approval |
warm address alertfailure | Address is a PO box or other post office address, virtual address, UPS store, mail forward, or mail drop. Such addresses are not valid for KYC verification. | One of the following documents. Document must show the full name and valid street address: - US Military Identification Card - Utility bill - Current rental or lease agreement - Mortgage statement |
Watchlistfailure | Appears on government watchlist (such as OFAC) or other relevant watchlists. | This outcome requires a manual review by Marqeta to determine the next appropriate step. Contact your Marqeta representative. |
URL path parameters
| Fields | Description |
|---|---|
| user_token string Required | Unique identifier of the user resource for which you want to retrieve KYC verification results. Allowable Values: Existing user resource token |
URL query parameters
| Fields | Description |
|---|---|
| count integer Optional | Number of resources to retrieve. Allowable Values: 1-10 |
| start_index integer Optional | Sort order index of the first resource in the returned array. Allowable Values: Any integer |
| fields string Optional | Comma-delimited list of fields to return (field_1,field_2, and so on). Leave blank to return all fields.Allowable Values: Comma-delimited list of fields, or blank |
| sort_by string Optional | Field on which to sort. Use any field in the resource model, or one of the system fields lastModifiedTime or createdTime. Prefix the field name with a hyphen (-) to sort in descending order. Omit the hyphen to sort in ascending order.Allowable Values: createdTime, lastModifiedTime, or any field in the resource modelDefault value: -createdTime |
Response body
| Fields | Description |
|---|---|
| count integer Conditionally returned | Number of resources in the returned array. This field is returned if there are resources in your returned array. Allowable Values: 1-10 |
| data array of objects Conditionally returned | Array of KYC verification response objects. Objects are returned as appropriate to your query. Allowable Values: Valid array of one or more KYC verification response objects |
| data[].business_token string Conditionally returned | The business account holder on which the identity check was performed. Allowable Values: Existing business token |
| data[].created_time datetime Returned | Time when the KYC verification was performed. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| data[].last_modified_time datetime Returned | Time when the KYC verification was last updated. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| data[].manual_override boolean Conditionally returned | If true, the user account holder is designated as having passed a verification check without Marqeta performing the check.This override is used when verification is performed through another mechanism, such as an alternative KYC provider or directly with the account holder. Allowable Values: true, false |
| data[].notes string Conditionally returned | Notes pertaining to a manual override. This field is included in the response only when the manual_override field is set to true.Allowable Values: 255 char max |
| data[].reference_id string Conditionally returned | If you verified the account holder’s identity by performing a KYC verification outside of the Marqeta platform, you can use the reference_id field to store the reference number returned by that KYC provider. This field is included in the response only when the manual_override field is set to true.NOTE: When you submit a KYC verification request with manual_override=false, the Marqeta platform performs the verification through one of its KYC providers. If the KYC provider responds with a reference identifier, that identifier is passed to you by way of this field in the response.Allowable Values: 32 char max |
| data[].result object Conditionally returned | Contains information about the KYC verification result. Allowable Values: Existing KYC verification object |
| data[].result.codes array of objects Conditionally returned | An array of KYC verification result code objects. Allowable Values: One or more KYC verification result code objects |
| data[].result.codes[].code string Conditionally returned | For any pending or failure outcome, see the User KYC failure codes table, the Outcome reasons for the business table, or the Outcome reasons for individuals associated with a business table.Allowable Values: AddressIssue, DateofBirthIssue, Denied KYC, NameIssue, NoRecordFound, OFACFailure, RiskIssue, SSNIssue, warm address alert |
| data[].result.codes[].message string Conditionally returned | Result code description. Allowable Values: 255 char max |
| data[].result.status string Conditionally returned | KYC verification status. Allowable Values: success, failure, pending |
| data[].token string Conditionally returned | The unique identifier of the identity check. Allowable Values: Existing identity check token |
| data[].user_token string Conditionally returned | The user account holder on which the identity check was performed. Allowable Values: Existing user token |
| end_index integer Conditionally returned | Sort order index of the last resource in the returned array. This field is returned if there are resources in your returned array. Allowable Values: Any integer |
| is_more boolean Conditionally returned | A value of true indicates that more unreturned resources exist. A value of false indicates that no more unreturned resources exist.This field is returned if there are resources in your returned array. Allowable Values: true, false |
| start_index integer Conditionally returned | Sort order index of the first resource in the returned array. This field is returned if there are resources in your returned array. Allowable Values: Any integer |
Sample response body
JSON
Retrieve KYC result
Action:GETEndpoint:
/kyc/{token}
Use this endpoint to retrieve a specific KYC result.
URL path parameters
| Fields | Description |
|---|---|
| token string Required | Unique identifier of the KYC verification for which you want to retrieve the result. Allowable Values: Existing identity check token |
Response body
| Fields | Description |
|---|---|
| business_token string Conditionally returned | The business account holder on which the identity check was performed. Allowable Values: Existing business token |
| created_time datetime Returned | Time when the KYC verification was performed. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| last_modified_time datetime Returned | Time when the KYC verification was last updated. Allowable Values: datetime Format: yyyy-MM-ddThh:mm:ssZ |
| manual_override boolean Conditionally returned | If true, the user account holder is designated as having passed a verification check without Marqeta performing the check.This override is used when verification is performed through another mechanism, such as an alternative KYC provider or directly with the account holder. Allowable Values: true, false |
| notes string Conditionally returned | Notes pertaining to a manual override. This field is included in the response only when the manual_override field is set to true.Allowable Values: 255 char max |
| reference_id string Conditionally returned | If you verified the account holder’s identity by performing a KYC verification outside of the Marqeta platform, you can use the reference_id field to store the reference number returned by that KYC provider. This field is included in the response only when the manual_override field is set to true.NOTE: When you submit a KYC verification request with manual_override=false, the Marqeta platform performs the verification through one of its KYC providers. If the KYC provider responds with a reference identifier, that identifier is passed to you by way of this field in the response.Allowable Values: 32 char max |
| result object Conditionally returned | Contains information about the KYC verification result. Allowable Values: Existing KYC verification object |
| result.codes array of objects Conditionally returned | An array of KYC verification result code objects. Allowable Values: One or more KYC verification result code objects |
| result.codes[].code string Conditionally returned | For any pending or failure outcome, see the User KYC failure codes table, the Outcome reasons for the business table, or the Outcome reasons for individuals associated with a business table.Allowable Values: AddressIssue, DateofBirthIssue, Denied KYC, NameIssue, NoRecordFound, OFACFailure, RiskIssue, SSNIssue, warm address alert |
| result.codes[].message string Conditionally returned | Result code description. Allowable Values: 255 char max |
| result.status string Conditionally returned | KYC verification status. Allowable Values: success, failure, pending |
| token string Conditionally returned | The unique identifier of the identity check. Allowable Values: Existing identity check token |
| user_token string Conditionally returned | The user account holder on which the identity check was performed. Allowable Values: Existing user token |
Sample response body
JSON