AML

To keep Nest secure and globally compliant, we implemented a sub-second and seamless AML (Anti-Money Laundering) check that happens before users deposit into any Nest vault.

What You Need to Know

  • AML checks are required to deposit into Nest vaults and are powered by TRM Labs.

  • AML checks run on both the app and smart contracts (to ensure they can't be bypassed).

  • Policies are disclosed to asset issuers and protocols whose assets are available through Nest vaults.

Wallet restricted notification

How It Works

We use TRM, a leading blockchain intelligence provider, to run AML checks. Nest's legal team defines the rules, and Predicate helps us apply them securely and efficiently under the hood — so you don’t have to worry about a thing. In order to asses compliance for each vault you will need to grab the Slug of the vault using the below.

Retrieve vaults

get

Fetch a list of vaults based on query parameters.

Query parameters
excludeGeoRestrictedbooleanOptional

Exclude geo-restricted vaults.

vaultStatusstring · enumOptional

Filter vaults by status (Live or ComingSoon).

Possible values:
includeHiddenbooleanOptional

Include hidden vaults in the response.

Responses
200

A list of vaults.

application/json
get
GET /api/vaults HTTP/1.1
Host: app.nest.credit
Accept: */*
[
  {
    "vaultStatus": "ComingSoon",
    "slug": "text",
    "image": "text",
    "name": "text",
    "description": "text",
    "tvl": 1,
    "formattedTvl": "text",
    "apy": 1,
    "price": 1,
    "isEstimatedApy": true,
    "hasBoostedRewards": true,
    "formattedApy": "text",
    "formattedCooldownDays": "text",
    "estimatedApy": 1,
    "showLiveApy": true,
    "featuredAssets": [
      {
        "title": "text",
        "description": "text",
        "image": "text",
        "darkImage": "text",
        "comingSoon": true,
        "badgeSize": "sm"
      }
    ],
    "ethereum": {
      "contractAddress": "text"
    },
    "plume": {
      "contractAddress": "text"
    }
  }
]

You will then plug in the slug into the below API call to grab the compliance information

Retrieve compliance details by slug

get

Fetch compliance information for a token using its slug.

Path parameters
slugstringRequired

Unique slug identifier for the token.

Query parameters
userstringRequired

User address (Ethereum format).

Pattern: ^0x[a-fA-F0-9]{40}$
chainIdintegerRequired

Chain ID for the compliance check.

isDepositAndBridgebooleanOptional

Indicates if the compliance check is for deposit and bridge.

Responses
200

Compliance details.

application/json
get
GET /api/{slug}/compliance?user=text&chainId=1 HTTP/1.1
Host: app.nest.credit
Accept: */*
{
  "isCompliant": true,
  "predicateMessage": {
    "taskId": "text",
    "expireByBlockNumber": 1,
    "signerAddresses": [
      "text"
    ],
    "signatures": [
      "text"
    ]
  }
}

Need Help

If you have any questions or believe there’s an error, we’re here to help. Reach out in our Discord community and the team will get back to you promptly. You can also navigate to theDeveloperssection for more API details.

Last updated