Compliance
Enzyme Vaults can enforce onchain compliance through Chainlink ACE (Automated Compliance Engine), an onchain policy engine. Compliance rules live in dedicated policy contracts, separate from the vault's core logic, so they can be added, changed, or removed without redeploying the vault.
What can be gated
Compliance checks can be applied to the following vault actions:
Deposits — both synchronous deposits and request-based deposits
Redemption requests
Share minting and burning
Share transfers — any transfer of vault shares between wallets
Checks are configured per action, and a vault may use none, some, or all of them.
How it behaves
When a gated action is performed, the vault passes the details of the action (such as the depositor wallet and the amounts involved) to the policy engine, which evaluates them against the configured policies in order.
If any policy rejects the action, the entire transaction reverts. The deposit, redemption, mint, burn, or transfer does not take place, and no assets or shares move.
Example policies
Policies can, for example:
require that a wallet holds a verified identity credential (such as KYC or AML status), using Chainlink ACE's cross-chain identity framework
screen wallets against allowlists and denylists (e.g. sanctioned addresses)
restrict an action to wallets holding a specific role, such as verified or accredited investors
enforce volume or rate limits
pause a given action entirely, or restrict it to certain time intervals
The exact set of rules is defined per vault, so the checks a depositor encounters depend on how that vault is configured.
Configuration
Only the vault owner or its admins can enable, replace, or disable compliance checks on a vault. The policy rules themselves are managed on the Chainlink policy engine.
Chainlink ACE is one of the validation mechanisms available to Enzyme Vaults — share transfers, for example, can alternatively be restricted using address lists.
Last updated
Was this helpful?