KYC
General information
Know Your Client (KYC) is an important compliance measure used by financial institutions to prevent fraud, money laundering, terrorist financing and other financial crimes.
It is important for financial institutions and other businesses to incorporate them into the authorization process to ensure that only legitimate customers or businesses are granted access. This can also help financial institutions comply with legal and regulatory requirements, avoid fines, penalties, etc.
HyperID's KYC Procedure
HyperID has implemented a KYC procedure that can range from basic to complete, depending on the level of verification required. Service Providers can leverage this KYC process in their own workflows through HyperID.
To ensure that the KYC process complies with local regulations and requirements, HyperID integrates multiple KYC providers covering different countries and jurisdictions. This allows service providers to easily adapt to different regulatory environments and ensure that their KYC process meets local standards.
Another advantage of the HyperID KYC system is that a single KYC process is applied to all wallets. This means that users only have to go through the KYC process once, regardless of how many wallets or accounts they have with different service providers.
This not only saves users time and effort, but also ensures that all accounts are consistent and secure, making it easier to detect and prevent fraudulent activity. HyperID's KYC procedures are highly reliable and secure because they are designed to protect the privacy and security of customers' personal information.
When it comes to KYC data, users have full control over their information. This means that they have the ability to decide which services can access their data and can revoke access at any time.
Users can also control the type of information that is sent to each service, and they can choose to send only the information that is necessary for that particular service. Control over KYC data is very important to users because it allows them to protect their privacy and security.
If a user has completed KYC verification once, service providers can verify their identity information either on-chain or via traditional REST API by using HyperID MultiPass.
An Example of a KYC Procedure
Here’s the common instructions on how users can get whitelisted for the public token offerings that can be implemented for service providers through the use of HyperID access and account management platform.
Check these preliminaries to make sure you are aware of the sale conditions:
Create a HyperID account on https://login.hypersecureid.com/.
Complete Know-Your-Customer (KYC) procedure.
Please note that the sequence of steps and the content of some instructions may vary depending on the terms and conditions of the sale.
Common Steps
Go to [a link of the offering].
On the web page, read the sale conditions and сlick Continue.
Click Continue to HyperID. You will be redirected to the https://login.hypersecureid.com/ HyperID’s login page.
To register a new HyperID account, click Create account.
In the opened window, specify your Email, create a Password, and then confirm the password.
When you finished filling out the fields, click Create account.
After you complete registration of the HyperID account, HyperID will redirect you back to the sale webpage.
Specify a wallet address you will be using at sale.
Select the country of your residence.
Click Start KYC. To complete KYC, provide correct information about yourself. Before submitting the files, please check and ensure they meet the KYC conditions.
Select the "I agree to processing my personal data, as described in the Consent to Personal Data Processing" checkbox, and click Next.
The KYC procedure consists of five steps. For successful completion of KYC, please follow the on-screen instructions carefully and provide correct information.
KYC flow
Flow starts at the final point of the sign-in / sign-up scenario and its details depend on the specific KYC provider (usually the user is redirected to KYC provider domain and HyperID receives only the result of KYC procedure).The KYC provider is the third-party service that manages the KYC process. During the KYC procedure, users are required to provide certain personal and confidential documents to prove their identity. The KYC provider is responsible for securely storing and processing the user's private information, such as passport or identification card numbers, bank statements, and other sensitive data. HyperID provides two types of KYC:
basic: requires identity document, phone number verification and liveness check (selfie)
full: additionally to basic mode requires proof of residence
HyperID is not present inside KYC procedure and has no access to user’s personal data, provided for KYC. Following parameters must be added to authorization request to run KYC flow after authorization:
Add
kyc-verification
toscope
parameterSet
verification_level
parameter to3
(for basic KYC) or4
(full KYC).
KYC flow is unavailable for guest account (verification_level
parameter is ignored for this case.).
KYC API
Service providers can receive information about the user KYC status. Worth noticing, HyperID DOES NOT STORE the KYC-related information - all requests are forwarded to the KYC providers.A user may fulfill the KYC information during the sign-in procedure (for details, see the KYC authorization flow).Service Providers can obtain top-level KYC status or detailed KYC information using following REST API requests
Kyc user status get
Request
Value
Description
URI
https://rs0.hypersecureid.com/kyc/user/status-get
Sandbox URI
https://rs0-sandbox.hypersecureid.com/kyc/user/status-get
Method
POST
Authorization
Bearer AA.BB.CC
Content-type
application/json
Scopes
email, kyc-verification
Body Json Field
Name
Required
Type
Description
request_id
false
int64
Opaque value used to maintain id between the request and response.
verification_level
false
int
See table bellow
Verification level
Value
Name
3
kyc basic
4
kyc full (default)
Example
Response
Body Json Field
Name
Type
Description
request_id
int64
Opaque value used to maintain id between the request and response.
verification_level
int
See table above
user_status
int
See table below
kyc_id
string
Applicant Id
first_name
string
last_name
string
birthday
string
country_a2
string
Country alpha 2 (two letters)
country_a3
string
Country alpha 3 (three letters)
provided_country_a2
string
Provided country alpha 2 (two letters)
provided_country_a3
string
Provided country alpha 3 (three letters)
address_country_a2
string
Address country alpha 2 (two letters)
address_country_a3
string
Address country alpha 3 (three letters)
phone_number_country_a2
string
Phone number country alpha 2 (two letters)
phone_number_country_a3
string
Phone number country alpha 3 (three letters)
phone_number_country_code
string
ip_countries_a2
json_array
ip_countries_a3
json_array
moderation_comment
string
Comments from moderator, if any
reject_reasons
json_array
Rejection reasons, if any
support_link
string
create_dt
uint64
review_create_dt
uint64
review_complete_dt
uint64
expiration_dt
uint64
result
int
See table below
KYC user status
Value
Name
0
none
1
pending
2
complete success
3
complete fail retrayable
4
complete fail final
5
deleted
Result
Value
Name
0
success
-1
fail by token invalid
-2
fail by token expired
-3
fail by access denied
-4
fail by service temporary not valid
-5
fail by invalid parameters
-6
fail by billing
-7
fail by user not found
-8
fail by user kyc deleted
Example
Kyc user status top level get
Request
Value
Description
URI
https://rs0.hypersecureid.com/kyc/user/status-top-level-get
Sandbox URI
https://rs0-sandbox.hypersecureid.com/kyc/user/status-top-level-get
Method
POST
Authorization
Bearer AA.BB.CC
Content-type
application/json
Scopes
email, kyc-verification
Body Json Field
Name
Required
Type
Description
request_id
false
int64
Opaque value used to maintain id between the request and response.
Example
Response
Body Json Field
Name
Type
Description
request_id
int64
Opaque value used to maintain id between the request and response.
verification_level
int
See table below
user_status
int
See table below
create_dt
uint64
review_create_dt
uint64
review_complete_dt
uint64
result
int
See table below
Verification level
Value
Name
3
kyc basic
4
kyc full
KYC user status
Value
Name
0
none
1
pending
2
complete success
3
complete fail retrayable
4
complete fail final
5
deleted
Example
Last updated