Privacy & KYC
Money Account balances convenience with privacy and compliance.Privacy by Default
Address Minimization
Public APIs return capabilities, not raw addresses:/resolveshows what a user can receive, not their vault address- Payments route through the system without exposing on-chain activity
- Cross-chain activity is not publicly aggregated
Selective Disclosure
Users choose what to reveal:- Share payment identity without revealing all transactions
- Prove KYC status without exposing personal data
- Transact pseudonymously when regulations allow
Optional KYC
For regulated flows (fiat rails, high-value transactions), Money Account supports opt-in KYC.How It Works
- User initiates KYC via
/do-kyc - Redirected to Sumsub for verification
- On success, attestation is stored
- Attestation is reusable across services
What’s Stored
| On-Chain | Off-Chain |
|---|---|
| ”User is KYC-verified” flag | Personal documents |
| Verification timestamp | Name, address, etc. |
| Attestation hash | Government IDs |
When KYC is Required
- Fiat off-ramps
- High-value transactions (configurable threshold)
- Regulated business integrations
When KYC is Not Required
- Crypto-to-crypto payments
- Small transactions
- Pseudonymous usage
API Endpoints
| Endpoint | Description |
|---|---|
GET /is-kyc-done | Check KYC status |
POST /do-kyc | Initiate KYC flow |

