Note: This guide applies specifically to the
standalone screening
mode, where blockchain addresses are screened independently of transaction
flows.
Prerequisites
Before you begin, make sure you have the following:- A Circle Developer Account
- An API key with appropriate access to Compliance Engine (all testnet keys have this access by default)
- Node.js installed, or an API tool like Postman or cURL
- Axios installed, if using Node.js
Steps
Follow the steps below to screen an address:1. Generate a test address
To simulate a real screening scenario, visit vanity-eth.tk to generate a test Ethereum wallet address ending in9999:
For example:
9999 suffix triggers Circle’s Sanctions Blocklist in the screening
API.
2. Screen the wallet address explicitly using Circle’s API
Submit aPOST request to the screening API using Node.js:
Javascript
Note: You must replace the
<API_KEY> above with your actual Circle API
key.3. Review the screening response
If the address is flagged, the response returns aDENIED result with some
actionable compliance recommendations:
JSON
4. Evaluate screening recommendations
If the screening result isDENIED, you can take the following actions based on
the recommendations provided:
- Block the wallet from transaction activity (based on the
DENYrecommendation) - Flag the wallet for manual review (based on the
REVIEWrecommendation) - Freeze the wallet (based on the
FREEZE_WALLETrecommendation)
You can block or freeze the wallet from the
Compliance Engine > Alerts
page in the Developer Console. For more details, see the
Alerts Management
documentation.
Automate rules based on screening outcomes
You can integrate actions and alerts into the transaction logic of your application:Javascript
riskCategories, ruleName, and
type to make compliance decisions tailored to your business needs. For more
information about these fields, refer to their descriptions in the response
object of the
Screen a blockchain address API
endpoint.
Testing with simulated risk categories
You can use specific suffixes in test addresses to simulate different risk scenarios:| Suffix | Simulated Rule Triggered |
|---|---|
9999 | Circle’s Sanctions Blocklist |
8888 | Frozen User Wallet |
7777 | Custom Blocklist Rule |
8999 | Severe Sanctions Risk (Owner) |
8899 | Severe Terrorist Financing (Owner) |
8889 | Severe CSAM Risk (Owner) |
7779 | Severe Illicit Behavior (Owner) |
7666 | High Illicit Behavior Risk (Owner) |
7766 | High Gambling Risk (Owner) |
Test suffixes are useful in pre-production environments for validation of
custom rule enforcement and behavior.