KintoID
Deployment Address:
Mainnet: 0xf369f78E3A0492CC4e96a90dae0728A38498e9c7
Interface: IKintoId.sol
Basics
The easiest way to check an account is to use the isKYC
method. It checks a given address, making sure it has a valid KYC. It has been audited recently for AML sanctions, and it has none.
For example, if you want to check whether a specific address verifies all these properties, you can call:
Trait IDs
Every user has a trait that identifies its country of origin using the ISO-32166. For example, if an individual is a citizen of the USA, the trait with ID 840 will be set. The following traits will be used to verify additional flags on a user identity.
KINTO_ADMIN_WALLET
0
US_ACCREDITATION
1
USA
840
...
...
Using the following call method, you can quickly check if a user has any trait. For example, if you want to check whether a specific address is an accredited investor in the US, you can use:
Sanction IDs
The numerical country code will key the sanction IDs according to https://en.wikipedia.org/wiki/ISO_3166-1_numeric.
Kinto will use the country code 1 for network related incidents including hacks, stolen and duplicate identity.
For example, to check whether a user has any sanctions in the US:
State Functions
Privileged roles can call the following functions.
1. mintIndividualKyc
This function mints a KYC token for an individual with specific traits. Only KYC providers are allowed to call this function.
_signatureData
SignatureData calldata
Contains the signature data for minting the KYC token
_traits
uint16[] memory
The array of trait IDs for the individual
2. mintCompanyKyc
This function mints a KYC token for a company with specific traits. Only KYC providers are allowed to call this function.
_signatureData
SignatureData calldata
Contains the signature data for minting the KYC token
_traits
uint16[] memory
The array of trait IDs for the company
3. burnKYC
This function burns a KYC token. Only KYC providers are allowed to call this function.
_signatureData
SignatureData calldata
Contains the signature data for burning
4. addTrait
This function adds a trait to a given account. Only KYC providers are allowed to call this function.
_account
address
The account address
_traitId
uint16
ID of the trait to add
5. removeTrait
This function removes a trait from a given account. Only KYC providers are allowed to call this function.
_account
address
The account address
_traitId
uint16
ID of the trait to remove
6. addSanction
This function adds a sanction to a given account. Only KYC providers are allowed to call this function.
_account
address
The account address
_countryId
uint16
ID of the country to sanction
7. removeSanction
This function removes a sanction from a given account.
Only KYC providers are allowed to call this function.
_account
address
The account address
_countryId
uint8
ID of the country to remove sanction
8. monitor
This function monitors an array of accounts and updates their traits and sanctions. Only KYC providers are allowed to call this function.
_accounts
address[] memory
Array of account addresses
_traitsAndSanctions
MonitorUpdateData[][] memory
Array of traits and sanctions updates
View Functions
Anyone can call the following functions without a transaction to retrieve information from the contract.
1. isKYC
This function checks whether a given account is KYC'd by checking the balance of KYC tokens.
_account
address
The address to check
2. isSanctionsMonitored
This function checks whether the account has been monitored for sanctions in the last X days.
_days
uint32
Number of days to check
3. isSanctionsSafe
This function checks whether a given account is safe from sanctions.
_account
address
The account address
4. isSanctionsSafeIn
This function checks whether a given account is safe from sanctions in a specific country.
_account
address
The account address
_countryId
uint16
The country ID
5. isCompany
This function checks whether a given account is a company.
_account
address
The account address
6. isIndividual
This function checks whether a given account is an individual.
_account
address
The account address
7. mintedAt
This function returns the timestamp when the KYC token was minted for a given account.
_account
address
The account address
8. hasTrait
This function checks whether a given account has a specific trait.
_account
address
The account address
index
uint16
Index of the trait to check
9. traits
This function returns an array of booleans representing the traits of the account.
_account
address
The account address
10. supportsInterface
Returns whether the contract implements the interface defined by the id
interfaceId
bytes4
id of the interface to be checked
Last updated