KYCViewer

Deployment Address

Mainnet: 0x33F28C3a636B38683a38987100723f2e2d3d038e

Code: KYCViewer.sol


Basics

  • This class provides helper methods to quickly check KYC & AML properties.

  • It abstracts complexity by checking both wallet and EOA (Externally Owned Account).

  • Offers various utility functions for retrieving user information and token balances.


Constructor

Constructor Parameters:

Parameter
Type
Explanation

_kintoWalletFactory

address

Address of the KintoWalletFactory contract

_faucet

address

Address of the Faucet contract

_engenCredits

address

Address of the EngenCredits contract

_kintoAppRegistry

address

Address of the KintoAppRegistry contract

Initialize

function initialize() external initializer

Initializes the KYCViewer contract, setting up ownership.


View Functions

function isKYC(address _address) external view returns (bool)

function isSanctionsSafe(address _account) external view returns (bool)

function isSanctionsSafeIn(address _account, uint16 _countryId) external view returns (bool)

function isCompany(address _account) external view returns (bool)

function isIndividual(address _account) external view returns (bool)

function hasTrait(address _account, uint16 _traitId) external view returns (bool)

function hasTraits(address account, uint16[] memory _traitIds) public view returns (bool[] memory)

function getCountry(address account) external view returns (uint16)

function getWalletOwners(address _wallet) public view returns (address[] memory owners)

function getUserInfo(address _account, address payable _wallet) external view returns (IKYCViewer.UserInfo memory info)

function getDevApps(address _wallet) external view returns (IKintoAppRegistry.Metadata[] memory)

function getBalances(address[] memory tokens, address target) external view returns (uint256[] memory balances)
  1. isKYC

Checks if an address or a wallet address is KYC'd (Know Your Customer).

function isKYC(address _address) external view override returns (bool);
Parameter
Type
Explanation

_address

address

The address to check.

  1. isSanctionsSafe

Checks if an account is safe from sanctions.

function isSanctionsSafe(address _account) external view override returns (bool);
Parameter
Type
Explanation

_account

address

The account to check.

  1. isSanctionsSafeIn

Checks if an account is safe from sanctions in a specific country.

function isSanctionsSafeIn(address _account, uint16 _countryId) external view override returns (bool);
Parameter
Type
Explanation

_account

address

The account to check.

_countryId

uint16

The country ID for the check.

  1. isCompany

Checks if an account is a company.

function isCompany(address _account) external view override returns (bool);
Parameter
Type
Explanation

_account

address

The account to check.

  1. isIndividual

Checks if an account is an individual.

function isIndividual(address _account) external view override returns (bool);
Parameter
Type
Explanation

_account

address

The account to check.

  1. hasTrait

Checks if an account has a specific trait.

function hasTrait(address _account, uint16 _traitId) external view returns (bool);
Parameter
Type
Explanation

_account

address

The account to check.

_traitId

uint16

The trait ID to check for.

  1. hasTraits

Checks if an account has multiple specific traits.

function hasTraits(address account, uint16[] memory _traitIds) public view returns (bool[] memory);
Parameter
Type
Explanation

account

address

The account to check.

_traitIds

uint16[]

Array of trait IDs to check.

  1. getCountry

Retrieves the country code associated with an account.

function getCountry(address account) external view returns (uint16);
Parameter
Type
Explanation

account

address

The account to check.

  1. getWalletOwners

Retrieves the owners of a wallet.

function getWalletOwners(address _wallet) public view override returns (address[] memory owners);
Parameter
Type
Explanation

_wallet

address

The wallet address.

  1. getUserInfo

Retrieves comprehensive information about a user.

function getUserInfo(address _account, address payable _wallet) external view override returns (IKYCViewer.UserInfo memory info);
Parameter
Type
Explanation

_account

address

The account address.

_wallet

address payable

The associated wallet address.

  1. getDevApps

Retrieves the apps associated with a developer wallet.

function getDevApps(address _wallet) external view override returns (IKintoAppRegistry.Metadata[] memory);
Parameter
Type
Explanation

_wallet

address

The wallet address.

  1. getBalances

Retrieves the token balances for a specific target address.

function getBalances(address[] memory tokens, address target) external view returns (uint256[] memory balances);
Parameter
Type
Explanation

tokens

address[]

Array of token addresses to query.

target

address

The address whose balances are queried.

Last updated