# The "HasClearAML" Attestation: Purpose and Limitations

## Overview

The "HasClearAML" attestation is a statement of fact that confirms a wallet holder has clear Anti-Money Laundering (AML) status. This attestation is useful for platforms and services that require AML compliance verification for financial services, high-value transactions, and regulatory compliance.

## How It Works

The process follows the standard attestation workflow:

1. **Wallet Connection**: Connect your Ethereum wallet to Zipwire
2. **AML Verification**: Complete AML background checks and compliance verification
3. **Status Assessment**: Zipwire evaluates your AML status based on verification results
4. **Attestation Issuance**: If you have clear AML status, claim the "HasClearAML" attestation
5. **Blockchain Recording**: The attestation is recorded on the Base blockchain

{% content-ref url="" %}
[](https://docs.zipwire.io/fundamentals/security/attestations)
{% endcontent-ref %}

## Privacy Features

* The attestation only confirms clear AML status without revealing specific compliance details
* No personal data is stored on the blockchain
* The attestation can be verified without exposing additional personal information
* AML verification results remain private and are not disclosed

## How to Get HasClearAML Attestations

{% content-ref url="" %}
[](https://docs.zipwire.io/fundamentals/security/attestations)
{% endcontent-ref %}

You can obtain HasClearAML attestations through:

* **Self-service**: Use [Zipwire Attest](https://docs.zipwire.io/zipwire-attest/zipwire-attest) for independent registration
* **Business integration**: Use [Zipwire Collect](https://github.com/zipwireapp/gbk-tz-docs/blob/main/zipwire-collect/README.md) when businesses include AML checks

## Use Cases

* **Financial services** - Verify users meet AML compliance requirements
* **High-value transactions** - Ensure participants have clear AML status
* **Regulatory compliance** - Meet AML verification requirements for regulated activities
* **DeFi protocols** - Verify users for compliance with financial regulations
* **Cross-border payments** - Ensure compliance with international AML standards
* **Cryptocurrency exchanges** - Verify users for trading and withdrawal limits

## Limitations

* **Status Only**: Confirms clear AML status, not specific compliance details
* **Transfer Vulnerability**: If a wallet is sold or stolen, the attestation remains
* **Status Revealing**: Unlike some attestations, this does reveal that you have clear AML status
* **Permanent Record**: Once issued, the attestation is permanent on the blockchain
* **Jurisdictional**: AML requirements may vary by jurisdiction and use case
* **Time Sensitivity**: AML status can change over time and may need periodic re-verification

## Best Practices

{% content-ref url="../attestations-privacy-timing-data-deletion" %}
[attestations-privacy-timing-data-deletion](https://docs.zipwire.io/fundamentals/security/attestations-privacy-timing-data-deletion)
{% endcontent-ref %}

* **Consider timing**: Space out AML attestation claims to avoid linking wallet addresses
* **Understand permanence**: AML attestations are permanent once issued
* **Use appropriately**: Only require AML attestations when necessary for your service
* **Regular updates**: Consider periodic re-verification for ongoing compliance
* **Jurisdictional compliance**: Ensure your use case aligns with local AML regulations

## Comparison to Other Attestations

* **IsAHuman**: Confirms the wallet belongs to a real person (no compliance information)
* **HasClearAML**: Confirms the user has clear AML status
* **Private Data Attestations**: Allow selective disclosure of specific compliance information
* **Age Attestations**: Verify age requirements but don't address AML compliance

{% content-ref url="the-isahuman-attestation-purpose-and-limitations" %}
[the-isahuman-attestation-purpose-and-limitations](https://docs.zipwire.io/fundamentals/security/attestations/the-isahuman-attestation-purpose-and-limitations)
{% endcontent-ref %}

{% content-ref url="the-private-data-attestation-merkle-roots" %}
[the-private-data-attestation-merkle-roots](https://docs.zipwire.io/fundamentals/security/attestations/the-private-data-attestation-merkle-roots)
{% endcontent-ref %}

## Technical Details

* **Schema UID**: `0xdc1cb4d85858a3c6fe90fcce9779c3ffad0376d5dd3583cf684056fd98359f9c`
* **Network**: Base Sepolia (testnet)
* **Schema Type**: Boolean attestation
* **Data Structure**: Simple true/false value
* **Privacy Level**: Basic - no personal data included
* **Transferability**: Not transferable
* **Revocability**: Revocable by Zipwire

## Related Resources

* [Understanding Merkle Trees and Proofs](https://docs.zipwire.io/fundamentals/security/understanding-merkle-trees-and-proofs)
* [The "IsAHuman" Attestation](https://docs.zipwire.io/fundamentals/security/attestations/the-isahuman-attestation-purpose-and-limitations)
* [The "Private Data" Attestation](https://docs.zipwire.io/fundamentals/security/attestations/the-private-data-attestation-merkle-roots)
* [Verifying Attested Wallets](https://docs.zipwire.io/fundamentals/security/wallet-verification-guide/verifying-attested-wallets)
