Compliance registry
Bridge Protocol's compliance registry is responsible of the storage of all identity information linked to an address or the storage of the history of transfers linked to an address.
Last updated
Bridge Protocol's compliance registry is responsible of the storage of all identity information linked to an address or the storage of the history of transfers linked to an address.
Last updated
Bridge Protocol is a tool to enforce and manage on-chain compliance rules that come from off-chain regulation. Therefore, someone needs to be the link between both worlds, updating on-chain what has been validated off-chain. We call that entity a KYC/AML provider.
Bridge Protocol supports compliance delegation, i.e. enabling multiple KYC/AML providers to work on the same token. For example, if your token is distributed to both US investors and European investors, you can have a US provider managing the compliance of US investors, and a European provider managing the compliance of European investors.
A KYC/AML provider can be yourself and/or third-party entities.
A token can have as many providers as you want.
You can add and remove providers to a token at any time.
The Compliance Registry is responsible of the storage of all identity information linked to an address or the storage of the history of transfers linked to an address. The compliance registry is managed by trusted intermediaries, the KYC/AML providers. Each trusted intermediary has its own space within the registry to update its own address related information. Based on the token trusted intermediaries, the Compliance Registry will return the compliance information that have been updated by one of the token trusted intermediary.
The Compliance Registry is designed to store only pseudo-anonymized data (no Customer Identification Data).
To be able to maintain a single reference currency for transfers history, the Compliance Registry will use the Price Oracle.
Attributes is an array of uint256.
Attribute ID
Attribute name
Attribute description
0
ATTRIBUTE_VALID_UNTIL
User validity end date (UNIX timestamp)
100
ATTRIBUTE_USER_KYC
User KYC level
110
ATTRIBUTE_AML_TRANSFER_LIMIT
User single transfer limit in referrence currency
111
ATTRIBUTE_AML_MONTHLY_LIMIT
User monthly transfer limit in referrence currency
112
ATTRIBUTE_AML_YEARLY_LIMIT
User yearly transfer limit in referrence currency
120
ATTRIBUTE_FREEZE_DIRECTION
User freeze direction
FREEZE_DIRECTION_NONE (0)
Not frozen
FREEZE_DIRECTION_RECEIVE (1)
Frozen as token receiver
FREEZE_DIRECTION_SEND (2)
Frozen as token sender
FREEZE_DIRECTION_SEND (3)
Frozen as token sender
FREEZE_DIRECTION_BOTH (4)
Frozen as token sender and receiver
121
ATTRIBUTE_FREEZE_START
User freeze start date (UNIX timestamp)
122
ATTRIBUTE_FREEZE_END
User freeze end date (UNIX timestamp)
123
ATTRIBUTE_FREEZE_INVERTED
Specifies if start date and end date period has to be inverted
FREEZE_INVERTED_NO (0)
Freeze period not inverted
FREEZE_INVERTED_YES (1)
Freeze period inverted
130
ATTRIBUTE_WHITELISTED
Global whitelist flag
WHITELISTED_NO (0)
User not whitelisted
WHITELISTED_YES (1)
User whitelisted