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:

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);
  1. isSanctionsSafe

Checks if an account is safe from sanctions.

function isSanctionsSafe(address _account) external view override returns (bool);
  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);
  1. isCompany

Checks if an account is a company.

function isCompany(address _account) external view override returns (bool);
  1. isIndividual

Checks if an account is an individual.

function isIndividual(address _account) external view override returns (bool);
  1. hasTrait

Checks if an account has a specific trait.

function hasTrait(address _account, uint16 _traitId) external view returns (bool);
  1. hasTraits

Checks if an account has multiple specific traits.

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

Retrieves the country code associated with an account.

function getCountry(address account) external view returns (uint16);
  1. getWalletOwners

Retrieves the owners of a wallet.

function getWalletOwners(address _wallet) public view override returns (address[] memory owners);
  1. getUserInfo

Retrieves comprehensive information about a user.

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

Retrieves the apps associated with a developer wallet.

function getDevApps(address _wallet) external view override returns (IKintoAppRegistry.Metadata[] memory);
  1. getBalances

Retrieves the token balances for a specific target address.

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

Last updated