> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/zkp2p/zkp2p-contracts/llms.txt
> Use this file to discover all available pages before exploring further.

# ZKP2P V2 Contracts Documentation

> Smart contract infrastructure for trustless peer-to-peer fiat-to-crypto exchanges using zero-knowledge proofs

<div className="relative overflow-hidden bg-gradient-to-br from-[#1c1434] via-[#2a1f47] to-[#1c1434] dark:from-[#0f0820] dark:via-[#1a1434] dark:to-[#0f0820]">
  <div className="absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAxMCAwIEwgMCAwIDAgMTAiIGZpbGw9Im5vbmUiIHN0cm9rZT0icmdiYSgyNTUsMjU1LDI1NSwwLjA1KSIgc3Ryb2tlLXdpZHRoPSIxIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8+PC9zdmc+')] opacity-20" />

  <div className="relative max-w-7xl mx-auto px-6 sm:px-8 lg:px-12 py-20 sm:py-24 lg:py-28">
    <div className="max-w-4xl">
      <h1 className="text-4xl sm:text-5xl lg:text-6xl font-bold text-white mb-6 leading-tight">
        Trustless P2P Fiat-to-Crypto Trading
      </h1>

      <p className="text-lg sm:text-xl text-gray-300 dark:text-gray-400 max-w-2xl mb-8 leading-relaxed">
        Smart contract infrastructure enabling secure peer-to-peer exchanges between fiat and cryptocurrency using zero-knowledge payment verification.
      </p>

      <div className="flex flex-wrap gap-4">
        <a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg bg-[#f41c7c] hover:bg-[#d91869] text-white font-semibold transition-colors duration-200 no-underline">
          Get Started

          <svg className="ml-2 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
          </svg>
        </a>

        <a href="/architecture" className="inline-flex items-center px-6 py-3 rounded-lg border border-white/30 bg-white/10 hover:bg-white/20 text-white font-semibold transition-colors duration-200 no-underline">
          View Architecture
        </a>
      </div>
    </div>
  </div>
</div>

<div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
  <h2 className="text-3xl font-bold text-gray-900 dark:text-white mb-4">Quick Start</h2>
  <p className="text-base text-gray-600 dark:text-gray-400 mb-8">Get up and running with ZKP2P contracts in minutes</p>

  <Steps>
    <Step title="Install Dependencies">
      Clone the repository and install the required dependencies using Yarn.

      ```bash theme={null}
      git clone https://github.com/zkp2p/zkp2p-contracts.git
      cd zkp2p-contracts
      yarn install
      ```
    </Step>

    <Step title="Configure Environment">
      Copy the default environment file and configure your API keys for deployment and verification.

      ```bash theme={null}
      cp .env.default .env
      ```

      Set the following variables in your `.env` file:

      * `ALCHEMY_API_KEY` - For RPC access
      * `BASE_DEPLOY_PRIVATE_KEY` - Private key for Base mainnet deployments
      * `TESTNET_DEPLOY_PRIVATE_KEY` - Private key for testnet deployments
      * `BASESCAN_API_KEY` - For contract verification
    </Step>

    <Step title="Build and Test">
      Compile the contracts and run the test suite to ensure everything is working correctly.

      ```bash theme={null}
      yarn build
      yarn test
      ```

      <Note>The test suite includes both Hardhat and Foundry tests for comprehensive coverage.</Note>
    </Step>

    <Step title="Deploy Locally">
      Start a local Hardhat node and deploy the contracts for development and testing.

      ```bash theme={null}
      # Terminal 1: Start local node
      yarn chain

      # Terminal 2: Deploy contracts
      yarn deploy:localhost
      ```
    </Step>
  </Steps>
</div>

<div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
  <h2 className="text-3xl font-bold text-gray-900 dark:text-white mb-4">Explore by Topic</h2>
  <p className="text-base text-gray-600 dark:text-gray-400 mb-8">Deep dive into the core concepts and components of ZKP2P</p>

  <CardGroup cols={3}>
    <Card title="Core Concepts" icon="lightbulb" href="/concepts/escrow">
      Understand escrow deposits, intent lifecycle, and payment verification fundamentals
    </Card>

    <Card title="Smart Contracts" icon="file-contract" href="/contracts/escrow">
      Explore the contract architecture including Escrow, Orchestrator, and verifiers
    </Card>

    <Card title="Integration Guides" icon="code" href="/guides/creating-deposits">
      Learn how to integrate ZKP2P into your application with step-by-step examples
    </Card>

    <Card title="Payment Methods" icon="credit-card" href="/resources/supported-payment-methods">
      View supported payment platforms including Venmo, PayPal, Wise, and more
    </Card>

    <Card title="SDK Reference" icon="cube" href="/sdk/installation">
      Use the @zkp2p/contracts-v2 package for addresses, ABIs, and utilities
    </Card>

    <Card title="Deploy to Production" icon="rocket" href="/deployment/networks">
      Deploy and verify contracts on Base mainnet and testnet environments
    </Card>
  </CardGroup>
</div>

<div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
  <h2 className="text-3xl font-bold text-gray-900 dark:text-white mb-4">Key Features</h2>
  <p className="text-base text-gray-600 dark:text-gray-400 mb-8">What makes ZKP2P powerful for P2P trading</p>

  <div className="grid grid-cols-1 md:grid-cols-2 gap-6">
    <div className="p-6 rounded-2xl border border-gray-200 dark:border-[#27272a] bg-white dark:bg-[#1a1d27] hover:border-[#f41c7c] dark:hover:border-[#f41c7c] transition-colors duration-200">
      <div className="flex items-center mb-3">
        <div className="w-10 h-10 rounded-lg bg-[#f41c7c]/10 flex items-center justify-center mr-3">
          <svg className="w-5 h-5 text-[#f41c7c]" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-white">Trustless Trading</h3>
      </div>

      <p className="text-sm text-gray-600 dark:text-gray-400">
        Zero-knowledge proofs enable secure fiat-to-crypto exchanges without intermediaries or trusted third parties
      </p>
    </div>

    <div className="p-6 rounded-2xl border border-gray-200 dark:border-[#27272a] bg-white dark:bg-[#1a1d27] hover:border-[#f41c7c] dark:hover:border-[#f41c7c] transition-colors duration-200">
      <div className="flex items-center mb-3">
        <div className="w-10 h-10 rounded-lg bg-[#f41c7c]/10 flex items-center justify-center mr-3">
          <svg className="w-5 h-5 text-[#f41c7c]" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-white">Multi-Platform Support</h3>
      </div>

      <p className="text-sm text-gray-600 dark:text-gray-400">
        Support for 8+ payment platforms including Venmo, PayPal, Wise, Zelle, CashApp, Revolut, and more
      </p>
    </div>

    <div className="p-6 rounded-2xl border border-gray-200 dark:border-[#27272a] bg-white dark:bg-[#1a1d27] hover:border-[#f41c7c] dark:hover:border-[#f41c7c] transition-colors duration-200">
      <div className="flex items-center mb-3">
        <div className="w-10 h-10 rounded-lg bg-[#f41c7c]/10 flex items-center justify-center mr-3">
          <svg className="w-5 h-5 text-[#f41c7c]" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 10V3L4 14h7v7l9-11h-7z" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-white">Intent-Based Architecture</h3>
      </div>

      <p className="text-sm text-gray-600 dark:text-gray-400">
        Efficient liquidity matching through intent signals with configurable rates, limits, and expiration periods
      </p>
    </div>

    <div className="p-6 rounded-2xl border border-gray-200 dark:border-[#27272a] bg-white dark:bg-[#1a1d27] hover:border-[#f41c7c] dark:hover:border-[#f41c7c] transition-colors duration-200">
      <div className="flex items-center mb-3">
        <div className="w-10 h-10 rounded-lg bg-[#f41c7c]/10 flex items-center justify-center mr-3">
          <svg className="w-5 h-5 text-[#f41c7c]" fill="none" stroke="currentColor" viewBox="0 0 24 24">
            <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" />
          </svg>
        </div>

        <h3 className="text-lg font-semibold text-gray-900 dark:text-white">Modular & Extensible</h3>
      </div>

      <p className="text-sm text-gray-600 dark:text-gray-400">
        Registry-based architecture with pluggable verifiers, hooks, and extensibility for new payment methods
      </p>
    </div>
  </div>
</div>

<div className="mt-16 mb-16 max-w-5xl mx-auto px-6">
  <div className="rounded-2xl border border-gray-200 dark:border-[#27272a] bg-gradient-to-br from-[#f41c7c]/5 to-[#fc7cbc]/5 dark:from-[#f41c7c]/10 dark:to-[#fc7cbc]/10 p-8 sm:p-10">
    <h2 className="text-2xl sm:text-3xl font-bold text-gray-900 dark:text-white mb-4">Ready to Build?</h2>

    <p className="text-base text-gray-600 dark:text-gray-400 mb-6 max-w-2xl">
      Start integrating ZKP2P contracts into your application today. Follow our quickstart guide to deploy locally and run your first P2P trade.
    </p>

    <a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg bg-[#f41c7c] hover:bg-[#d91869] text-white font-semibold transition-colors duration-200 no-underline">
      View Quickstart Guide

      <svg className="ml-2 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
        <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M13 7l5 5m0 0l-5 5m5-5H6" />
      </svg>
    </a>
  </div>
</div>
