> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xentfi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AML & Compliance

> XentFi integrates with Chainalysis, the industry leader in blockchain analytics, to provide real-time anti-money laundering (AML) screening and sanctions compliance for all transactions.

## Overview

```mermaid theme={null}
flowchart TB
    subgraph Input["Payment Initiation"]
        Address[Crypto Address]
        Transaction[Transaction Details]
    end

    subgraph Screening["AML Screening"]
        Chainalysis[Chainalysis API]
        Sanctions[OFAC Sanctions List]
        Risk[Risk Assessment]
    end

    subgraph Outcome["Screening Results"]
        Pass[✅ Pass\nPayment Allowed]
        Fail[❌ Fail\nPayment Blocked]
        Review[⚠️ Review\nManual Review Required]
    end

    Address --> Chainalysis
    Address --> Sanctions
    Transaction --> Risk

    Chainalysis --> Outcome
    Sanctions --> Outcome
    Risk --> Outcome
```

## Why AML Compliance Matters

<CardGroup cols={2}>
  <Card title="⚖️ Regulatory Compliance" icon="gavel">
    Meet global regulatory requirements including FinCEN, FATF, and local regulations
  </Card>

  <Card title="🛡️ Risk Mitigation" icon="shield">
    Protect your business from exposure to sanctioned entities and illicit funds
  </Card>

  <Card title="🏦 Banking Relationships" icon="bank">
    Maintain banking partnerships with demonstrated compliance programs
  </Card>

  <Card title="🌍 Global Operations" icon="globe">
    Operate confidently across jurisdictions with automated compliance
  </Card>

  <Card title="📊 Audit Trail" icon="document">
    Complete records of all screening activities for regulators
  </Card>

  <Card title="🔒 Customer Protection" icon="heart">
    Prevent your platform from being used for illicit activities
  </Card>
</CardGroup>

## How AML Screening Works

```mermaid theme={null}
sequenceDiagram
    participant Customer
    participant YourApp as Your Application
    participant XentFi as XentFi API
    participant Chainalysis as Chainalysis
    participant OFAC as OFAC Sanctions

    Customer->>YourApp: Initiates payment
    YourApp->>XentFi: Submit address for screening
    XentFi->>Chainalysis: Check address risk score
    XentFi->>OFAC: Check sanctions lists
    Chainalysis-->>XentFi: Risk assessment
    OFAC-->>XentFi: Sanctions status

    alt Low Risk & Not Sanctioned
        XentFi-->>YourApp: ✅ Approved
        YourApp->>Customer: Payment continues
    else High Risk or Sanctioned
        XentFi-->>YourApp: ❌ Blocked
        YourApp->>Customer: Payment blocked, contact support
    end
```

## Screening Capabilities

### Sanctions Screening

| Sanctions List | Coverage      | Update Frequency |
| -------------- | ------------- | ---------------- |
| OFAC (US)      | Comprehensive | Real-time        |
| EU Sanctions   | Full list     | Real-time        |
| UN Sanctions   | Complete      | Real-time        |
| UK Sanctions   | Full list     | Real-time        |
| Other Global   | Major lists   | Daily            |

### Risk Assessment

| Risk Level   | Description                      | Action                 |
| ------------ | -------------------------------- | ---------------------- |
| **Low**      | Normal transaction, no red flags | Auto-approve           |
| **Medium**   | Some risk indicators             | Enhanced review        |
| **High**     | Multiple risk factors            | Manual review required |
| **Critical** | Direct sanctions match           | Auto-block             |

### Transaction Monitoring

| Monitor Type         | What It Checks        | Frequency |
| -------------------- | --------------------- | --------- |
| Source of funds      | Origin wallet history | Real-time |
| Transaction patterns | Unusual behavior      | Real-time |
| Counterparty risk    | Recipient screening   | Real-time |
| Velocity checks      | Rapid transactions    | Real-time |

## Use Cases

### Payment Processing

| Scenario              | Screening Action       | Outcome              |
| --------------------- | ---------------------- | -------------------- |
| Customer payment      | Screen sender address  | Approve/Block        |
| Large transaction     | Enhanced due diligence | Manual review        |
| New customer          | Full KYC + screening   | Risk rating assigned |
| International payment | Cross-border checks    | Enhanced monitoring  |

### Wallet Management

| Scenario            | Screening Action      | Outcome               |
| ------------------- | --------------------- | --------------------- |
| New deposit address | Address screening     | Approval required     |
| Whitelist address   | Pre-screening         | Approved list only    |
| Withdrawal request  | Destination screening | Block if sanctioned   |
| Internal transfer   | Both parties screened | Auto-approve or block |

### Exchange Operations

```mermaid theme={null}
flowchart LR
    subgraph Incoming["Incoming Transfer"]
        Sender[Sender Address] --> Screen1[Screening]
    end

    subgraph Processing["Exchange Processing"]
        Screen1 --> RiskCheck{Risk Check}
        RiskCheck -->|Low Risk| Trade[Allow Trading]
        RiskCheck -->|High Risk| Freeze[Freeze Funds]
    end

    subgraph Outgoing["Outgoing Transfer"]
        Trade --> Withdraw[Withdrawal Request]
        Withdraw --> Screen2[Destination Screening]
        Screen2 -->|Approved| Release[Release Funds]
        Screen2 -->|Blocked| Hold[Hold for Review]
    end
```

## Compliance Workflows

### Standard Payment Flow

```mermaid theme={null}
stateDiagram-v2
    [*] --> AddressSubmitted: Customer provides address
    AddressSubmitted --> Screening: API call to Chainalysis
    Screening --> LowRisk: Risk score low
    Screening --> HighRisk: Risk score high
    Screening --> Sanctioned: Sanctions match

    LowRisk --> Approved: Auto-approve
    HighRisk --> ManualReview: Compliance review
    Sanctioned --> Blocked: Auto-block

    ManualReview --> Approved: Reviewer approves
    ManualReview --> Blocked: Reviewer rejects
    ManualReview --> EnhancedDD: Requires more info

    Approved --> [*]
    Blocked --> [*]
```

### Customer Onboarding

| Step | Action             | Compliance Check      |
| ---- | ------------------ | --------------------- |
| 1    | Customer registers | Identity verification |
| 2    | Submits address    | Sanctions screening   |
| 3    | Provides KYC docs  | Document verification |
| 4    | Risk assessment    | Risk score assigned   |
| 5    | Account activated  | Ongoing monitoring    |

## Screening API

### Check Single Address

<CodeGroup>
  ```bash theme={null}
  curl -X GET https://api.xentfi.com/v1/aml/check/{address} \
    -H "apiKey: your-api-key" \
    -H "orgId: your-org-id"
  ```
</CodeGroup>

<CodeGroup>
  ```json theme={null}
  {
      "data": {
          "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb0",
          "isSanctioned": false,
          "riskScore": 15,
          "riskLevel": "LOW",
          "identifications": [],
          "screeningTimestamp": "2024-01-15T10:30:00.000Z"
      }
  }
  ```
</CodeGroup>

### Sanctioned Address Response

```json theme={null}
{
    "data": {
        "address": "0xSanctionedAddress...",
        "isSanctioned": true,
        "riskScore": 100,
        "riskLevel": "CRITICAL",
        "identifications": [
            {
                "category": "sanctions",
                "name": "Entity Name",
                "description": "OFAC sanctions designation",
                "url": "https://ofac.treasury.gov/sanctions/..."
            }
        ],
        "screeningTimestamp": "2024-01-15T10:30:00.000Z"
    }
}
```

### Batch Address Check

```bash theme={null}
curl -X POST https://api.xentfi.com/v1/aml/check-batch \
  -H "apiKey: your-api-key" \
  -H "orgId: your-org-id" \
  -H "Content-Type: application/json" \
  -d '{
    "addresses": [
      "0xAddress1...",
      "0xAddress2...",
      "0xAddress3..."
    ]
  }'
```

## Compliance Rules Engine

### Configurable Rules

| Rule Type                | Description                      | Example                    |
| ------------------------ | -------------------------------- | -------------------------- |
| **Velocity limits**      | Max transactions per time period | 10 transactions/hour       |
| **Value thresholds**     | Max amount per transaction       | \$50,000 per transfer      |
| **Country restrictions** | Block certain jurisdictions      | Block sanctioned countries |
| **Entity blacklist**     | Block specific addresses         | Custom blocklist           |
| **Risk score limits**    | Auto-block above threshold       | Block risk score > 80      |

### Automated Actions

| Trigger            | Action          | Notification          |
| ------------------ | --------------- | --------------------- |
| Sanctions match    | Immediate block | Compliance team alert |
| High risk score    | Hold for review | Review queue          |
| Suspicious pattern | Freeze account  | Security alert        |
| Velocity exceeded  | Temporary lock  | User notification     |

## Compliance Dashboard

<img src="https://mintlify.s3.us-west-1.amazonaws.com/xentfi/images/compliance/dashboard.png" alt="Compliance Dashboard" />

### Key Metrics

| Metric                | Description                  | Update Frequency |
| --------------------- | ---------------------------- | ---------------- |
| Total screenings      | Number of addresses screened | Real-time        |
| Blocked transactions  | Sanctions matches            | Real-time        |
| Risk distribution     | Low/Medium/High breakdown    | Hourly           |
| Review queue          | Pending manual reviews       | Real-time        |
| False positive rate   | Accuracy metric              | Daily            |
| Average response time | Screening speed              | Real-time        |

## Reporting & Audit

### Available Reports

| Report Type             | Contents                  | Frequency    |
| ----------------------- | ------------------------- | ------------ |
| **Transaction log**     | All screened transactions | On-demand    |
| **Sanctions hits**      | Sanctions matches         | Daily/Weekly |
| **Risk assessment**     | Customer risk ratings     | Monthly      |
| **Suspicious activity** | SAR filing data           | As needed    |
| **Compliance summary**  | Executive overview        | Monthly      |

### Audit Trail

Every screening creates a permanent record:

```json theme={null}
{
    "screeningId": "scr_123e4567",
    "timestamp": "2024-01-15T10:30:00.000Z",
    "address": "0xAddress...",
    "result": "PASS",
    "riskScore": 15,
    "screenedBy": "system",
    "requestId": "req_123e4567",
    "ipAddress": "203.0.113.0",
    "userId": "user_123"
}
```

## Best Practices

<Info>
  * **Screen every address** - Never skip screening for any transaction
  * **Monitor continuously** - Re-screen addresses periodically
  * **Keep records** - Maintain audit trail for 7+ years
  * **Train staff** - Ensure team understands compliance procedures
  * **Update policies** - Review rules regularly
  * **Report suspicious activity** - File SARs when required
</Info>

## Regulatory Compliance

### Key Regulations

| Regulation               | Jurisdiction | Requirement                  |
| ------------------------ | ------------ | ---------------------------- |
| **Bank Secrecy Act**     | USA          | AML program, recordkeeping   |
| **FinCEN Rules**         | USA          | MSB registration, SAR filing |
| **FATF Recommendations** | Global       | Travel Rule, KYC/CDD         |
| **5th AMLD**             | EU           | Customer due diligence       |
| **Travel Rule**          | Global       | Beneficiary information      |

### Compliance Certifications

| Certification   | Status | Description             |
| --------------- | ------ | ----------------------- |
| SOC 2 Type II   | ✅      | Security & availability |
| ISO 27001       | ✅      | Information security    |
| PCI DSS Level 1 | ✅      | Payment security        |
| GDPR            | ✅      | Data protection         |

## Risk Scoring

### Risk Score Calculation

| Factor              | Weight | Description             |
| ------------------- | ------ | ----------------------- |
| Sanctions match     | 100    | Direct match = blocked  |
| Country risk        | 0-30   | Jurisdiction risk level |
| Transaction size    | 0-20   | Amount thresholds       |
| Velocity            | 0-20   | Transaction frequency   |
| New address         | 0-10   | Age of address          |
| Historical activity | 0-20   | Previous behavior       |

### Risk Levels

| Score  | Level    | Action                 |
| ------ | -------- | ---------------------- |
| 0-20   | Low      | Auto-approve           |
| 21-50  | Medium   | Enhanced monitoring    |
| 51-80  | High     | Manual review required |
| 81-100 | Critical | Auto-block             |

## Troubleshooting

<AccordionGroup>
  <Accordion title="False positive sanctions match">
    **Solution:**

    * Verify address is correct
    * Submit for manual review
    * Request OFAC reconsideration if needed
  </Accordion>

  <Accordion title="Screening timeout">
    **Possible causes:**

    * Network issues
    * High volume
    * API rate limits

    **Solution:** Implement retry logic with exponential backoff.
  </Accordion>

  <Accordion title="Customer blocked incorrectly">
    **Solution:**

    * Review screening details
    * Collect additional information
    * Manual override with justification
    * Document decision
  </Accordion>
</AccordionGroup>

## Pricing

| Feature             | Starter | Professional | Business | Enterprise |
| ------------------- | ------- | ------------ | -------- | ---------- |
| Address screening   | ✅       | ✅            | ✅        | ✅          |
| Real-time sanctions | ✅       | ✅            | ✅        | ✅          |
| Risk scoring        | Basic   | Advanced     | Premium  | Custom     |
| Batch screening     | ❌       | ✅            | ✅        | ✅          |
| Manual review queue | ❌       | ✅            | ✅        | ✅          |
| Custom rules        | ❌       | ❌            | ✅        | ✅          |
| API access          | Limited | Full         | Full     | Full       |
| Priority support    | ❌       | ❌            | ✅        | 24/7       |

## Performance Metrics

| Metric           | Target       | Description            |
| ---------------- | ------------ | ---------------------- |
| Screening time   | \< 500ms     | Time to check address  |
| Batch screening  | \< 5 seconds | Per 100 addresses      |
| Update frequency | Real-time    | Sanctions list updates |
| Availability     | 99.9%        | API uptime             |

## Related Products

<CardGroup cols={3}>
  <Card title="Webhooks" icon="webhook" href="/products/webhooks">
    Real-time compliance notifications
  </Card>

  <Card title="Payment Links" icon="link" href="/products/payment-links">
    Screened payment processing
  </Card>

  <Card title="Master Wallets" icon="wallet" href="/products/master-wallets">
    Compliance-ready wallets
  </Card>
</CardGroup>

## Next Steps

* [Screen your first address](/api-reference) in API Reference
* [Configure compliance rules](/api-reference) in dashboard
* [Set up compliance webhooks](/products/webhooks) for real-time alerts
* [Generate audit reports](/api-reference) for regulators
