User Object Details
User Schema
Key | Type | Required | Description |
| String | N.A. Included in API response | Primary Key of the user object. |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the account will auto close. Only utilized in instances of a flagged account that needs to be closed. Go to Intro to Risk to learn more. |
| String | N.A. Included in API response | The Primary Key that denotes your client object in our system. |
| String | N.A. Included in API response | Your common name in our system. |
| Array of Dict | Optional | Contains all the KYC information associated with the user profile. |
| Int | Optional | CIP Tag associated with the user object. Go to Intro to Spec Sheet to learn more. |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the user object was created. |
| Boolean | Optional | If the user profile is a business, the value is |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the user object was last updated. |
| String | Depends. Only required if you are trying to flag a user. | If |
| String | Depends. Only required if you are trying to flag a user. | The reason for user flag. Go to Possible Flag Codes to learn more. |
| String | Depends. Only required if you are trying to close or lock a user account. | The current permission of the user object. Go to Possible User Permissions to learn more. |
| String | Depends. Only required if you are trying to close or lock a user account. | The reason for user flag. Go to Possible Permission Codes to learn more. |
| Array of Strings | N.A. Included in API response. You will be supplying this in the request header when creating a user account | Known IPs that the user is using to operating their account. |
| Array of Strings | Required during | Legal names the user profile will be using. |
| String | Required during | email of user. |
| String | Depends. Only required if you wish to use Synapse email/password authentication | password associated with login. |
| String | Depends. Only required if you wish to use Synapse email/password authentication | If |
| Array of Strings | Required during | Phone number associated with user login credentials. |
| String | N.A. Included in API response | Refresh token you will be using to OAuth the user. |
| String | Optional | Unique platform side identifier |
| String | N.A. Included in API response | Represents if the user is on a meaningful screenings list. Go to Possible Watchlists Values to learn more. |
Possible Flag Codes
Flag Code | Description | Next Steps | Set By |
| Flag reason unknown. | No next steps recommend here since legacy tag. | Legacy tag, deprecated now. |
| User operates in a blocked industry. | Account will be closed and the user's funds will be mailed back to them on the | us |
| User is deemed high risk. | Account will be closed and the user's funds will be mailed back to them on the | us |
| Additional documents are required to be able to make a decision on user account. | Submit documents listed in | us |
| Additional documents are required to be able to make a decision on user account. | Submit documents listed in | us |
| Additional documents are required to be able to make a decision on user account. | Submit documents listed in | us |
| You have requested Synapse to review and decision the user account and any additional documents that we need have been submitted to us. | User account is under review by us. Pending a decision. | you |
| You have requested Synapse to review and decision the user account and any additional documents that we need have been submitted to us. | User account is under review by us. Pending a decision. | you |
| You have requested Synapse to review and decision the user account and any additional documents that we need have been submitted to us. | User account is under review by us. Pending a decision. | you |
| You have requested Synapse to review and decision the user account and any additional documents that we need have been submitted to us. | User account is under review by us. Pending a decision. | you |
| You have requested Synapse to review and decision the user account and any additional documents that we need have been submitted to us. | User account is under review by us. Pending a decision. | you |
Possible User Permissions
Permission | Description | Next Steps | Set By |
| User KYC review unfinished. No account or payment activity allowed. | Ensure all KYC has been supplied and is marked as valid by us. Go to Intro to Spec Sheet to learn more. | us |
| User KYC review finished. User is allowed to only receive payments, not originate or authorize any payments. | If this is an acceptable final permission, no additional steps needed. If you also wish to originate or authorize payments on behalf of the user, ensure all KYC has been supplied and is marked as valid by us. Go to Intro to Spec Sheet to learn more. | us |
| User KYC review finished. User is allowed to operate the account as allowed by the spec sheet. Go to Intro to Spec Sheet to learn more. | If this is an acceptable final permission, no additional steps needed. | us |
| User KYC review finished and user has been locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User KYC review finished and user has been closed. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User account has been unindexed. It's like the account never existed. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
Possible Permission Codes
Permission | Description | Next Steps | Set By |
| Permission reason unknown. | No next steps recommend here since legacy tag. | Legacy tag, deprecated now. |
| The user conducted suspicious activity and for that reason the account has been closed or locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| The user account has been closed due to some legal request that was received. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User is in a blocked list and for that reason the account has been closed or locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User supplied fraudulent KYC documents and for that reason the account has been closed or locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User is operating in a blocked industry and for that reason the account has been closed or locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User has high returns increasing the risk of loss of funds and for that reason the account has been closed or locked. | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| User account has been closed due to a negative balance in their account. | Once the user is able to fund their account, either with direct deposit or payment origination, the account will return back to its previous state. | us |
| User account has been closed or locked by you or by our team based on your request | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you |
| User account has been closed or locked by you or by our team based on user request | Please ensure that the user has been notified of this adverse action and no funds access have been restricted and the user has been able to cash out remaining balance in their account(s). | you or us |
| The user account has been closed because another account with the same KYC on your platform exists in our system | Please ensure that the user has access to their open account thus eliminating the need to open a new duplicate account. You can also view all duplicate accounts for a particular user and then swap the account closure decision from one account to another. | us |
Please note that the user will be cashed out automatically from the system if any one of the codes are picked:
UNUSUAL_ACTIVITY|COMPLIANCE_SUSPICIOUS
BLOCKED_INDUSTRY
PLATFORM_REQUEST
USER_REQUEST
PLATFORM_TERMINATED
NO_ACTIVITY
PERMANENT_CLOSURE
When a user is auto cashed out, we will issue a check to their mailing address, if avaliable or else to the base document address on file.
Possible Watchlists Values
Unless your program is configured differently, all values except NO_MATCH
and FALSE_POSITIVE
will impact user permissions and will keep the permission as UNVERIFIED
until further review.
Permission | Description | Next Steps |
| User Object is pending screenings review. | We will automatically run sanctions screenings, you can poll |
| User is a soft match on one or more relevant sanctions list. A document upload is needed to further evaluate the soft match. | Traverse through |
| User Object is a match on a sanctions screenings list. | Lock user account for an appropriate Permission Code. In this case that would be |
| User is a soft match on one or more relevant sanctions list. | No action required on your side. We will review the user object to either decision it as |
| User Object is a not a match on any relevant sanctions screenings list. | No action required. |
| User Object was a soft match on one or more relevant sanctions screenings list. But now has been decisioned as a | No action required. |
Base Document Schema
Key | Type | Required | Description |
| String | Yes | Address city of the business location or individual's residence. If the user wishes to receive mail elsewhere, you can add that as a |
| String | Yes | ISO Alpha-2 formatted Address country code of the business location or individual's residence. |
| Integer | Yes | Address zip/postal code of the business location or individual's residence. |
| String | Yes | Address street of the business location or individual's residence. |
| String | Yes | Address subdivision (state) of the business location or individual's residence. |
| String | No | Common name for the individual/entity. |
| Integer | Yes | Day of entity formation for business or Birth date for individual. |
| Integer | Yes | Month of entity formation for business or Birth month for individual. |
| Integer | Yes | Year of entity formation for business or Birth year for individual. |
| Array of String | Yes if business base doc | Allowed values: |
| String | No | Desired scope for base document. Go to Intro to Spec Sheet to learn more. |
| String | No | The key of the document you intend to submit. Go to Intro to Spec Sheet to learn more. |
| String | No | The key of the document option you intend to submit. Go to Intro to Spec Sheet to learn more. |
| String | No | The title of the document option you intend to submit. Go to Intro to Spec Sheet to learn more. |
| String | N.A. Included in API response | Included for business user's business base document. Possible values: |
| String | Yes | Email of the individual/entity associated with this base document. |
| String | Yes | Industry or profession of business or individual. Go to Allowed Entity Scopes response section to see all the possible values. |
| String | Yes | Type of business or gender of the individual. Go to Allowed Entity Types response section to see all the possible values. |
| String | Yes if individual base doc on business user | Allowed values: |
| String | Yes if you wish to | Primary key of the base document. This value is a local primary key, meaning, it's only unique within a user object. Different user objects can have same base doc IDs. |
| Number | N.A. Included in API response | Included for an individual's base document (either for business, joint or individual accounts). Value ranges from 0-1. Go to ID Score to learn more. |
| String | N.A. Included in API response | Included for an individual's base document (either for business, joint or individual accounts). Value can be |
| String | Yes | IP of the individual/entity associated with this base document. |
| Boolean | No | If |
| String | Yes | Name of the individual/entity associated with this base document. |
| String | No | Maiden name of the individual. Helpful to provide this in instances where the individual's maiden name is still associated with their TIN/SSN. |
| Number | Yes if individual base doc on business user | Percentage of the business owned by the beneficial owner. |
| String | N.A. Included in API response | Permission scope of the base document. Go to Intro to Spec Sheet to learn more. |
| String | Yes | Phone number of the individual/entity associated with this base document. |
| Array of Objects | No | Physical documents linked to the base document. Go to Physical Document Schema to learn more. |
| Array of String | N.A. Included in API response | Documents required to decision a flagged user. Go to Possible Flag Codes to learn more. |
| Object | N.A. Included in API response | This object contains all the sanctions screenings lists the user has been run against. This object is just a detailed response that decides the value of |
| Array of Objects | No | Social documents linked to the base document. More details below. |
| String | Yes if individual base doc on business user | Title of the beneficial owner. |
| Array of Objects | No | Virtual documents linked to the base document. More details below. |
| String | N.A. Included in API response | Represents if the document is on a meaningful screenings list. Go to Possible Watchlists Values to learn more. |
Screenings Results Details
Please note that not all sanctions lists will be appropriate for your use-case. Your spec sheet dictates which sanctions lists affect the Possible Watchlists Values. Go to Intro to Spec Sheet to learn more.
Here is an example object for screening_results
object:
Here are all the possible values for individual screenings lists:
Value | Description |
| Screenings have failed, we will auto-retry. |
| Screenings have not been attempted yet. We will auto-run. |
| Base Document is a false positive on the screenings list. |
| Base Document is a soft or actual match on the screenings list. Final determination will happen at the watchlists level. |
Virtual Document Schema
Key | Type | Required | Description |
| String | Yes | Type of virtual document being submitted. Go to Allowed Document Types response section to see all the possible values. |
| String | Yes | Value of the document. |
| String | Yes if you wish to | Primary key of the virtual document. This value is a local primary key, meaning, it's only unique within a base document. Different base documents can have same virtual document IDs. |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the virtual document was last updated. |
| String | N.A. Included in API response | Status of the virtual document. Go to Possible Sub-Document Status Values to learn more. |
| String | Depends | ISO Alpha-2 formatted Address country code of the issuing country of the virtual document. Go to Allowed Document Types response section to see which virtual documents require this field. This field will not be returned in any user responses. |
| String | Depends (Required with usage of BUS_REGISTRATION document type.) | Native government issued name or common name of the document type of issuing country of virtual document. eg for Brazil sole proprietors they may have a “CNPJ” number. This would be the meta.sub_type of BUS_REGISTRATION. Go to Allowed Document Types response section to see which virtual documents require this field. This field will not be returned in any user responses. |
Social Document Schema
Key | Type | Required | Description |
| String | Yes | Type of social document being submitted. Go to Allowed Document Types response section to see all the possible values. |
| String | Yes | Value of the document. |
| String | Yes if you wish to | Primary key of the social document. This value is a local primary key, meaning, it's only unique within a base document. Different base documents can have same social document IDs. |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the social document was last updated. |
| String | N.A. Included in API response | Status of the social document. Go to Possible Sub-Document Status Values to learn more. |
| String | N.A. Included in API response | Address city associated with the social document. Currently a response in |
| String | N.A. Included in API response | ISO Alpha-2 formatted Address country code associated with the social document. Currently a response in |
| String | N.A. Included in API response | Address zip or postal code associated with the social document. Currently a response in |
| String | N.A. Included in API response | Address street associated with the social document. Currently a response in |
| String | N.A. Included in API response | Address subdivision (state) associated with the social document. Currently a response in |
| String | N.A. Included in API response | C/O name associated with the social document. Currently a response in |
| Array of String | N.A. Included in API response | Currently a response in |
| String | Depends | ISO Alpha-2 formatted Address country code of the issuing state of the virtual document. Go to Allowed Document Types response section to see which social documents require this field. This field will not be returned in any user responses. |
| String | Depends | ISO Alpha-2 formatted Address country code of the issuing country of the virtual document. Go to Allowed Document Types response section to see which social documents require this field. This field will not be returned in any user responses. |
| String | Depends | Address street associated with the social document. Currently a response in |
| String | Depends | Address city associated with the social document. Currently a response in |
| String | Depends | Address subdivision (state) associated with the social document. Currently a response in |
| String | Depends | ISO Alpha-2 formatted Address country code associated with the social document. Currently a response in |
| Integer | Depends | Address zip or postal code associated with the social document. Currently a response in |
| String | No | C/O name associated with the social document. Currently a response in |
Physical Document Schema
Key | Type | Required | Description |
| String | Yes | Type of physical document being submitted. Go to Allowed Document Types response section to see all the possible values. For additional details on passports click Passports. |
| String | Yes | Value of the document. Physical documents must be encoded Base64 before being uploaded to our system. Please ensure that the image is clear, with all corners visible in case of a document with legible text. In case of videos, please ensure that the video is clear with ample light and audio is clear and without distortion or disturbance. In case of |
| String | Yes if you wish to | Primary key of the virtual document. This value is a local primary key, meaning, it's only unique within a base document. Different base documents can have same virtual document IDs. |
| Number | N.A. Included in API response | Unix timestamp (in ms) value of when the virtual document was last updated. |
| String | N.A. Included in API response | Status of the virtual document. Go to Possible Sub-Document Status Values to learn more. |
| Array of String | N.A. Included in API response | If the document status is |
| String | Depends | ISO Alpha-2 formatted state code of the issuing state of the physical document. Go to Allowed Document Types response section to see which physical documents require this field. This field will not be returned in any user responses. |
| String | Depends | ISO Alpha-2 formatted country code of the issuing country of the physical document. Go to Allowed Document Types response section to see which physical documents require this field. This field will not be returned in any user responses. |
| String | Depends | ID number associated with the physical document. Go to Allowed Document Types response section to see which physical documents require this field. This field will not be returned in any user responses. |
Possible Invalid Reasons Values for Physical Docs
Permission | Description | Next Steps |
| Incorrect file type (e.g. not png, jpeg, jpg). Go to Allowed Document Types response section to see which file extensions are allowed per physical document. | Prompt the user to upload physical document with a valid file format. |
| No image found in provided file (e.g. file is empty). | Ensure that this is not a bug on your side and then request the user to re-upload document. |
| Image is black and white (e.g. a high-contrast photoscan of an ID rather than a color picture of an ID). | Prompt the user to upload the physical document in natural color. |
| The image only has a single color channel (i.e. is an indexed 256-color image) instead of having 3 (RGB) channels. | Prompt the user to upload the physical document in natural color. |
| The image does not contain a recognizable document, has abnormal colors, or is otherwise difficult to read. | Prompt the user to upload a higher resolution physical document in natural color. |
| Name on physical document does not match name on Base Doc. | This can happen if the user did not submit their full legal name when submitting the base document. Prompt the user to update their |
| DOB on physical document does not match DOB on Base Doc. | This can happen if the user did accidentally submitted the wrong |
| No human face found in image, or unable to see eyes (e.g. due to glasses or flash). | Prompt the user to upload a higher resolution physical document in natural color. |
| [Applicable Only to Passports] Machine Readable Zone (MRZ) field not found. | Prompt the user to upload a passport photo with MRZ visible. |
| [Applicable Only to Passports] Name extracted from Machine Readable Zone (MRZ) doesn’t match Base Doc. | This can happen if the user did not submit their full legal name when submitting the base document. Prompt the user to update their |
| Flagged due to image missing missing corners, unable to read information due to glasses or flash, or ID has unusual patterns/formats (e.g. library card, non-DOD military ID card, suspected fake ID, etc.) | Prompt the user to upload a higher resolution physical document in natural color with all corners visible. |
| Flagged due to information match with IDV internal blocked database. | Lock user account for an appropriate Permission Code. In this case that would be |
| Name on physical document does not match name on Base Doc. | This can happen if the user did not submit their full legal name of the company when submitting the base document. Prompt the user to update their |
| Tax ID number (TIN) on the physical document does not match the | This can happen if the user did accidentally submitted the wrong |
| IRS logo not detected on an IRS issued document. | Prompt the user to upload a higher resolution physical document in natural color with all corners visible. |
| Unable to process video due to poor image quality. | Prompt the user to upload a higher resolution physical document in natural color. |
| Unable to process image and video files. | Prompt the user to upload a higher resolution physical document in natural color. |
| No human face found in image, or unable to see eyes (e.g. due to glasses or flash). | Prompt the user to upload a higher resolution physical document with face visible. |
| No human face found in video, or unable to see eyes (e.g. due to glasses or flash). | Prompt the user to upload a higher resolution physical document with face visible. |
| Face from the video does not match face from previously submitted ID. | Prompt the user to upload a higher resolution physical document with face visible. |
| Audio does not match expected statement for comparison. | Prompt the user to upload a video with valid audio artifacts. |
| No sound from the video detected. | Prompt the user to upload a video with valid audio artifacts. |
| File larger than allowed limit (4MB) for or image has higher than allowed pixel density. | Prompt the user to upload a lower resolution physical document in natural color with all corners visible. |
| Address on physical document does not match Address on Base Doc. | This can happen if the user has submitted a different address on the base document. Prompt the user to update their address on the base document and then resubmit the physical document. |
| Document is expired. | Prompt the user to upload a non-expired document. |
| Expiration field on physical document is not recognizable, or difficult to read. | Prompt the user to upload a higher resolution document in natural color. |
| No date detected on the document. | Prompt the user to upload a non-expired document. In most cases this means that the user is submitting an incorrect type of document. |
| No logo detected on the document. | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
| Logo on document could not be classified as a known bank or utility provider. | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
| Date or logo missing in the document. | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
| At least one text field (e.g. name, address, or date) was missing missing or couldn't be matched with Base Doc. | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
| Logo detected with a high level of confidence, and either address or date detected with a high level of confidence. | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
| Logo detected with a high level of confidence, but date and address only detected with a medium level of confidence | Prompt the user to upload a valid document. In most cases this means that the user is submitting an incorrect type of document. |
Possible Sub-Document Status Values
Status | Description | Next Steps |
| Document is pending review. | We will automatically or in rare instances, manually review [1] the document. You can poll |
| Document is valid. | Document has been marked as valid. |
| Document is invalid. | Prompt the user to upload a valid document. |
| Document has been submitted to us. This status means we currently lack the capability to verify this type of document automatically. | In most cases we recommend using a third-party provider to automatically verify the authenticity of the document before submitting. Once submitted to us, the user is free to be moved to the next onboarding step. |
[1] In some instances, if we are unable to automatically verify a document. In those instances the document is queued to be reviewed manually by an agent on our side. This review is completed in 2 business days or less.
Additional Details
Passports
The following details will help assist on proper setup when submitting passports.
Passport Document Types
document_type = GOVT_ID,
used when submitting a passport issued by the United States of America.document_type = PASSPORT_BIODATA
, used when submitting a passport issued by a country other then the United States of America.
When submitting a passport, the country code will be validated based on the value being US or not if you submit the incorrect document_type. document_types that will fail this check, including PASSPORT_BIODATA, are:
NATIONAL_ID
DRIVER_LICENSE
VOTER_REGISTRATION_CARD
PERMANENT_RESIDENT_CARD
PASSPORT_BIODATA
For users submitting passports issued in the United States of America, verification of a Social Security Number is also required. This is regardless of the user's country of residence.
Last updated