Step 4 - KYC
Phase 1 - Customer Onboarding
API Reference
- POST Upload Physical Documents
- GET List All Physical Documents for a User
- GET Get Physical Document File
- GET KYC Status
- PATCH Users Request
SQS Reference
Task O10 - Review KYC Workflow and Verify (Doc vs NonDoc)
- 3 different KYC Paths - A Partner will only be on one
-
DW Path - DW conducts all KYC checks, Partner does not currently perform any KYC/AML validations and is 100% relying on DriveWealth to perform these checks
-
Partner Path - Partner conducts all KYC checks - Partner has a signed Reliance letter with DriveWealth, and DriveWealth Compliance team has approved Partners KYC/AML Policy and Procedures
-
DW and Partner Path - Both conduct KYC checks - Partner conducts KYC checks and DW conducts KYC checks - DriveWealth Compliance team has approved Partners KYC/AML Policy Procedures and DW will conduct additional KYC
HIGH LEVEL FUNDAMENTAL WORKFLOW
KYC Status and User Status
The User Status of a new customer dictates what the customer is allowed to do in the account. There are four main User Statuses:
-
APPROVED- The account can freely trade, deposit and withdrawal money, initiate account transfers, and more
-
PENDING- Customersβ account is in Pending status primarily because his KYC Status has not been approved. In Pending status, the customer can only deposit money and cannot trade or withdraw money until KYC is approved; and
-
REJECTED - Open but in a state of Liquidate Only - Customers can only sell their holdings or initiate an account transfer. Purchases are not allowed. Customers can continue to deposit and withdraw money.
USER STATUS = APPROVED:
KYC Status:
KYC_APPROVED
- User is KYC approved
USER STATUS = PENDING:
KYC Status:
-
KYC_NOT_READY
- Partner has not collected all required PII to initiate KYC checks -
KYC_READY
- Partner has collected all required PII and is ready for KYC (POST /accounts) -
KYC_PROCESSING
- User has been sent for KYC -
KYC_INFO_REQUIRED
- Partner will need to update PII using the PATCH /users request. The account application has been sent back to the partner/customer to update information on the account that does not appear to be accurate, such as the customer name does not match the ID or the date of birth does not match the ID, or Users PII does not match for KYC -
KYC_DOC_REQUIRED
- User will need to submit a document for verification. The account application has been sent back to the partner/customer to upload another ID because the ID uploaded was unsupported, a poor quality, incorrect side, or no image was uploaded -
KYC_MANUAL_REVIEW
- User is under review after either additional info provided or additional document has been uploaded. The analyst will either approve the application, send back the application to the partner asKYC_INFO_REQUIRED
orKYC_DOC_REQUIRED
, or close the account asKYC_DENIED
USER STATUS = REJECTED:
KYC Status:
KYC_DENIED
- Userβs KYC has failed and needs to be resubmitted. This can be due to red flags of potential fraud, a customer exceeding the max attempts to get his account approved, the account is a test account, etc
Non-Documentary Verification Countries
- KYC will attempt non-documentary verifications of users in:
- United States - countryID: USA
- United Kingdom - countryID: GBR
- Australia - countryID: AUS
Task O11 - KYC Workflow - Verified and Tested in UAT
KYC Workflow if User Fails Non-Document Review
-
User submits required minimum information and opens their first account
-
Before User AND Account are Opened:
KYC Status =KYC_PROCESSING
the user will not be able to trade in the account, KYC will automatically trigger without a document -
Upon account opening:
Account status = PENDING
Account status = APPROVED if KYC does not fail
-
-
If the first KYC attempt fails verification:
KYC Status =INFO_REQUIRED
-
User couldn't be verified but will be given another opportunity without submitting a document, user can correct their full legal name, address, date of birth, or SSN/TIN for a second chance
-
If User fails a second time, they will be required to upload a document for verification
KYC status =DOC_REQURED
-
DriveWealth requires the Partner to load a document to proceed with the KYC process; once the document has been submitted for processing
KYC Status =PROCESSING
-
If the first document verification fails
KYC status =DOC_REQUIRED
-
If the User fails a second time
KYC status =MANUAL REVIEW
they will be sent through a manual review process
-
-
If all attempts fail (throughout the KYC process the account remains open)
KYC status =KYC_FAILED
the account is automatically closed and set for liquidation
KYC Workflow for Customer (User) Creation Requiring Document Upload
-
If you fall into either category (Path 1 - DW conducts KYC or Path 3 - BOTH the Partner and DW conduct KYC) where document upload in necessary, Upload POST/documents in the API Reference
-
UX/IUI Considerations: there are many different ways to display photo or document upload screens. DW best practice is to clearly articulate to the customer an explanation of why it's required
From a functional perspective:
- Allow a customer to either utilize an existing image on their mobile device / computer or
- Take a new screen shot (mobile) -
Verify if a front and back side will be required in order to appropriately KYC a customer. If only one side is submitted there is a strong chance the KYC will fail
-
To determine the current KYC status of a customer use the GET KYC Status endpoint, or KYC events from the Amazon SQS in the API Reference
PHOTO ID TABLE
Photo ID Type | Side Required |
---|---|
PASSPORT | FRONT ONLY |
VISA | FRONT ONLY |
DRIVER_LICENSE | FRONT & BACK |
NATIONAL_ID_CARD | FRONT & BACK / examples: Birth Cert, realID, stateID, defense ID card, SSN card |
VOTER_ID | FRONT & BACK |
WORK_PERMIT | FRONT & BACK / examples: EAD, H1B auth |
RESIDENCE_PERMIT | FRONT & BACK: example: green card, perm residency |
Updated about 1 year ago