✨Works out of the box guarantee. If you face any issue at all, hit us up on Telegram and we will write the integration for you.
logoReclaim Protocol Docs

Web Integration (Optional)

Integrate Reclaim verification into your website through a compatible browser extension

Optional Integration: This section is for websites that want to integrate with an extension built using the Reclaim Browser Extension SDK. If you're building an extension with popup/sidepanel verification, use Extension Integration instead.

Overview

Trigger Reclaim verification from your website through an installed browser extension. Users can verify without leaving your site - the extension handles all verification logic.

When to Use This

Choose web integration if:

  • 🌐 You have a website (not building an extension)
  • πŸ”Œ Users have a compatible extension built with this SDK
  • 🎨 You control the website UI (extension handles verification)
  • πŸ”„ You want in-page verification without redirects

How It Works

The web integration establishes communication between your website and the Reclaim browser extension:

Flow Breakdown

  1. Your Website: Calls SDK with extension ID
  2. Content Script Bridge: Receives request from webpage
  3. Extension Background: Orchestrates verification
  4. Offscreen Document: Generates proofs
  5. Provider Tab: Handles authentication
  6. Proofs Returned: Sent back to your website

Prerequisites

Before integrating, ensure you have:

Extension Requirement: Users must have a Reclaim-compatible extension installed. You can either:

  1. Build your own extension using Extension Integration
  2. Use the official Reclaim extension (if available)
  3. Partner with existing extension providers

Key Differences from Extension Integration

AspectExtension IntegrationWeb Integration
Who buildsYou build the extensionYou use existing extension
User installsYour extensionAny compatible extension
ControlFull controlLimited to verification API
UI LocationExtension popup/panelYour website
ComplexityHigher (extension dev)Lower (just web code)

Extension ID

The most important configuration for web integration is the Extension ID. This identifies which browser extension will handle verification requests.

Finding the Extension ID

For Chrome extensions:

  1. Navigate to chrome://extensions
  2. Enable "Developer mode" (top-right toggle)
  3. Find the extension
  4. Copy the ID (shown under the extension name)

Example ID: abcdefghijklmnopqrstuvwxyz123456

Storing the Extension ID

Development:

// .env.local
VITE_RECLAIM_EXTENSION_ID=abcdefghijklmnopqrstuvwxyz123456

Production:

// Use environment variables or configuration
const EXTENSION_ID = process.env.REACT_APP_RECLAIM_EXTENSION_ID;

Extension ID Changes: The extension ID changes between development and production builds. Ensure you use the correct ID for each environment.

Architecture Benefits

For Developers

  • βœ… No Extension Development: Just integrate SDK in your web app
  • βœ… Faster Integration: Standard web development workflow
  • βœ… Framework Agnostic: Works with React, Vue, Angular, vanilla JS
  • βœ… Easier Updates: Update your website without extension review process

For Users

  • βœ… Single Extension: One extension works across multiple websites
  • βœ… No Page Reloads: Verification happens in-place
  • βœ… Trusted Source: Extension from verified publisher
  • βœ… Consistent UX: Familiar verification flow across sites

Security Considerations

Extension Trust

Users must trust the browser extension since it:

  • Handles sensitive authentication flows
  • Generates cryptographic proofs
  • Has access to provider credentials

Best Practices:

  • Use well-known, audited extensions
  • Clearly communicate which extension is required
  • Provide extension installation instructions
  • Verify extension authenticity

Website Security

Your website should:

  • Validate proofs server-side (never trust client-side proofs alone)
  • Use HTTPS for all communication
  • Implement Content Security Policy (CSP)
  • Handle extension not installed gracefully

Browser Compatibility

Web integration works in browsers supporting Chrome extensions:

BrowserSupportNotes
Chromeβœ…Full support
Edgeβœ…Chrome Web Store extensions work
Braveβœ…Chrome Web Store extensions work
Operaβœ…Chrome Web Store extensions work
Firefox⏳Coming soon (Firefox addons)
Safari⏳Coming soon (Safari extensions)

Integration Approaches

You have two approaches for web integration:

1. Direct Client-Side Integration (Quick Start)

Pass credentials directly in your frontend code. Not recommended for production.

Pros:

  • βœ… Fastest to implement
  • βœ… No backend required
  • βœ… Good for prototypes

Cons:

  • ❌ Exposes application secret
  • ❌ Not secure for production
  • ❌ Credentials visible in client code

Quick Start Guide β†’

2. Server-Side Configuration (Production)

Generate verification requests on your backend, only pass configuration to frontend.

Pros:

  • βœ… Secure - secrets stay on server
  • βœ… Backend validation
  • βœ… User authorization
  • βœ… Production-ready

Cons:

  • ❌ Requires backend API
  • ❌ More complex setup

Production Setup β†’

Production Warning: Never expose your Application Secret in client-side code. Always use server-side configuration for production deployments.

Example Use Cases

DeFi Applications

Verify user credentials before token operations:

// Verify Twitter account before claiming tokens
const proofs = await verifyWithReclaim("twitter-profile");
await claimTokens(proofs);

Social Platforms

Authenticate users with provider credentials:

// Verify GitHub account for developer community
const proofs = await verifyWithReclaim("github-login");
await createProfile(proofs);

Identity Verification

Proof of account ownership:

// Verify Google account ownership
const proofs = await verifyWithReclaim("google-login");
await linkAccount(proofs);

Next Steps

Proceed to setup and implementation:

  1. Setup - Configure SDK in your web application
  2. Usage - Implement verification flows
  3. Troubleshooting - Common issues and solutions

Extension Installation Guide

For users of your website, provide clear instructions:

### Install the Reclaim Extension
 
1. Visit the [Chrome Web Store](https://chrome.google.com/webstore)
2. Search for "Reclaim Protocol"
3. Click "Add to Chrome"
4. Return to this page and click "Verify"

Or detect and prompt automatically (covered in Usage guide).