Skip to main content
Newton Verifiable Credential (Newton VC) lets developers bring user identity data into Newton policies. Instead of managing identity checks separately, you can write Rego policies that enforce KYC requirements—like age, country, or approval status—as part of the same policy evaluation that governs your transactions.

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:
  1. Collect — Your app collects KYC data from users via a third-party vendor.
  2. Register — You call the Newton SDK to register the KYC data for the user, scoped to your identity domain.
  3. Link — The user confirms the link between their identity and your policy client contract.
  4. 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 NewtonPolicyClient and EIP712
  • Be registered with the PolicyClientRegistry
  • Have setPolicy() called with params that include your identity domain: {"identity_domain": "0xa29cad97d4110e8822dedef32879f84a8e8889bf965ff9c57998689e2fdafbc4"}
The identity_domain is the output of keccak256("kyc").

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