Use Cases
Use case A — Use your own KYC data Developers collect KYC data from users via a third-party vendor and register it with Newton. Policies can then enforce compliance requirements based on that data (e.g., only allow transactions from users aged 18+ in approved countries). Use case B — Use another developer’s KYC data Developers can leverage KYC data collected by another developer in a privacy-preserving manner. You can ensure that a user’s identity meets your policy requirements without ever seeing the underlying personal data.How It Works
At a high level, Newton VC follows this flow:- Collect — Your app collects KYC data from users via a third-party vendor.
- Register — You call the Newton SDK to register the KYC data for the user, scoped to your identity domain.
- Link — The user confirms the link between their identity and your policy client contract.
- Submit — Your app submits a task with a signed intent. Newton evaluates the Rego policy, which checks identity data using built-in functions.
Policy Client Requirements
Your policy client contract must:- Inherit from both
NewtonPolicyClientandEIP712 - Be registered with the
PolicyClientRegistry - Set policy params with your identity domain:
{"identity_domain": "<keccak256 of your domain string>"}
identity_domain value is the keccak256 hash of your domain string (e.g., keccak256(bytes("my.dev.domain.co"))), encoded as a bytes32 hex string.
Next Steps
Integration Guide
Step-by-step walkthrough for integrating Newton VC into your app
SDK & Contract Reference
SDK methods and contract function signatures
Identity Policy Reference
Built-in Rego functions for writing identity-aware policies
Contract Addresses
IdentityRegistry and other deployed contract addresses