Identity Verification with Trust Engine
Trust Engine integrates with Self.xyz, a leading zero-knowledge (ZK) identity verification platform, to provide per-registration identity verification. Users can choose to verify their identity for specific file registrations, trading convenience for enhanced credibility and compliance.Key Concept: Identity verification is optional for each registration. Users can choose to add verified identity data to specific registrations. The
/register endpoint automatically includes identity data when the user has recently completed verification for that registration.๐ Quick Understanding
Identity verification works per-registration:- User decides: For this registration, do I want to include verified identity?
- If yes: User completes verification process (~2 minutes with Self app)
- Automatic inclusion:
/registerendpoint detects recent verification and includes identity data - If no: Registration proceeds with just file + blockchain proof
- โ Feature development without real ID uploads
- โ Stakeholder demonstrations
- โ Integration testing with predictable results
- โ UI/UX iteration without Self app dependency
๐ Implementation
Ready to integrate? Check the technical documentation:API Endpoints
Use REST API calls for identity verification
SDK Methods
Use JavaScript/TypeScript SDK for easy integration
CLI Commands
Use command-line interface for scripts and testing
What Users Need: Self App Download
Critical Requirement: Users must download the Self app (iOS/Android) to complete identity verification. This is a free app that processes ID documents securely on their device.
- User chooses enhanced registration with identity verification
- Your app redirects user to Trust Engineโs verification page
- User scans QR code with Self app (downloads if needed)
- Self app guides them through secure ID verification
- Registration automatically includes verified identity data
Why Use Identity Verification?
Design Rationale: Per-registration verification allows users to match identity disclosure to content sensitivity. A casual document might not need identity, while legal contracts benefit from verified authorship.
Flexible Credibility
Users choose when to add verified identity - trading convenience for enhanced trust per registration
Targeted Compliance
Meet KYC/AML requirements only when needed, while preserving privacy through zero-knowledge proofs
Selective Identity
Different registrations can verify different identity fields based on content requirements
Always Optional
Users never lose functionality - they gain the option to enhance specific registrations with identity
Credibility Trade-offs
Standard Registration (No Identity)
Standard Registration (No Identity)
What happens: File registered with wallet address onlyCredibility level: Basic blockchain proof of registrationUse cases: Personal documents, casual sharing, low-stakes contentUser effort: Minimal - just file upload and registration
Enhanced Registration (With Identity)
Enhanced Registration (With Identity)
What happens: File registered with verified identity data attachedCredibility level: High - blockchain proof + verified authorshipUse cases: Legal documents, compliance requirements, high-value contentUser effort: Additional 2-3 minutes for identity verification via Self app
What Gets Verified Per Registration?
For each file registration, users can choose to verify any combination of these identity fields:Personal Information
Personal Information
- Full Name - Legal name from government ID
- Date of Birth - Age verification and identity confirmation
- Nationality - Citizenship or nationality from passport/ID
- Gender - Gender as listed on official documents
Document Information
Document Information
- Issuing State/Country - Which government issued the ID document
- Document Number - Passport or ID card number (if requested)
- Expiry Date - When the ID document expires
How It Benefits Your Application
For Developers
- Simple Integration - Add identity verification with just a few API calls and URL redirects
- No QR Code Implementation - Just redirect users to the provided verification URL
- Flexible Requirements - Choose which identity fields your application needs
- Automatic Inclusion - Verified data is automatically attached to file registrations
- Privacy Compliant - ZK proofs ensure user privacy while meeting compliance needs
For End Users
- Quick Process - Simple redirect to Trust Engineโs verification page, verify once, use everywhere
- Privacy Control - Choose exactly what information to share
- Secure Verification - Documents processed using zero-knowledge technology
Integration Flow Overview
1
Setup Wallet Relation
Ensure the user has a wallet linked to a user ID in your system
2
Initiate Verification
Call the identity verification API to create a verification session
3
User Verification
User scans QR code with Self app and completes verification
4
Monitor Status
Check verification status and retrieve verified data
5
Enhanced Registrations
File registrations automatically include verified identity data
Per-Registration Use Cases
Key Insight: Different documents need different levels of identity verification. Users can tailor identity disclosure to match content sensitivity and requirements.
๐ Personal Document (No Identity Needed)
๐ Personal Document (No Identity Needed)
Example: Family photo, personal noteRegistration choice: Standard (no identity verification)Rationale: Content is personal/casual, no compliance requirementsResult: Fast registration, basic blockchain proof
๐ Business Contract (Name + Nationality)
๐ Business Contract (Name + Nationality)
Example: Service agreement, partnership contractRegistration choice: Verify name and nationality onlyRationale: Parties need to know who theyโre contracting with, but not full identity detailsResult: Legally meaningful while preserving privacy
๐ฆ Financial Document (Full KYC Verification)
๐ฆ Financial Document (Full KYC Verification)
Example: Loan agreement, investment documentRegistration choice: Verify name, nationality, DOB, issuing state, document expiryRationale: Regulatory compliance requires comprehensive identity verificationResult: Meets KYC/AML requirements with blockchain immutability
๐ Academic Credential (Name + Verification)
๐ Academic Credential (Name + Verification)
Example: Diploma, certificate, transcriptRegistration choice: Verify name and date of birthRationale: Credential authenticity requires identity confirmation, but not full personal detailsResult: Verifiable credentials with appropriate privacy level
Cross-Registration Flexibility
Same User, Different Needs
One user might register a casual document (no identity) and a legal contract (full identity) on the same day
Progressive Requirements
Start with basic registration, then upgrade specific documents with identity as needs evolve
Privacy & Security
Trust Engineโs identity verification is built on privacy-first principles:- Zero-Knowledge Proofs - Identity verified without exposing raw document data
- Selective Disclosure - Users choose exactly what information to share
- No Document Storage - Original identity documents never leave the userโs device
- Blockchain Immutability - Verified claims are tamper-proof once recorded
- Self-Sovereign Identity - Users maintain full control over their identity data
Next Steps
Ready to add identity verification to your application?Learn How It Works
Understand the technical process and user experience flow
Get Started
Step-by-step integration guide with code examples
New to Self.xyz? Check out our Self.xyz Overview to understand the verification platform before diving into implementation.
