> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payreque.st/llms.txt
> Use this file to discover all available pages before exploring further.

# Supported Crypto Wallets

> Every wallet app that works with PayRequest USDC payments on Base — for merchants receiving payments and customers paying invoices

# Supported Crypto Wallets

PayRequest uses **WalletConnect** to connect wallets on the **Base network**. Any wallet that supports WalletConnect and the Base network will work — for both merchants connecting to receive payments and customers paying invoices.

<Info>
  You need **USDC on Base** to pay, and a **Base-compatible wallet address** to receive. See the sections below for how to get set up with each wallet.
</Info>

## Wallets at a Glance

| Wallet                     | iOS    | Android | Browser extension       | Best for                            |
| -------------------------- | ------ | ------- | ----------------------- | ----------------------------------- |
| MetaMask                   | ✅      | ✅       | ✅ Chrome, Firefox, Edge | Most popular, widest support        |
| Coinbase Wallet            | ✅      | ✅       | ✅ Chrome                | Easy USDC purchase via Coinbase     |
| Rabby                      | ✅      | ✅       | ✅ Chrome                | Multi-chain power users             |
| Rainbow                    | ✅      | ✅       | —                       | Clean beginner-friendly UX          |
| Trust Wallet               | ✅      | ✅       | ✅ Chrome                | Built-in dApp browser               |
| Kraken Wallet              | ✅      | ✅       | —                       | Kraken exchange users               |
| Blockchain.com DeFi Wallet | ✅      | ✅       | —                       | DeFi-focused users                  |
| Any WalletConnect wallet   | varies | varies  | varies                  | If it supports Base + WalletConnect |

## Wallet Details

<AccordionGroup>
  <Accordion title="MetaMask">
    The most widely used crypto wallet. Available as a mobile app and browser extension.

    **Getting USDC on Base:**

    1. Open MetaMask and switch to the **Base** network (Settings → Networks → Add Base if not listed)
    2. Tap **Buy** and select USDC — MetaMask will route you through MoonPay or another on-ramp
    3. Alternatively, bridge USDC from Ethereum mainnet using the [Base Bridge](https://bridge.base.org)

    **Connecting to PayRequest:**

    * Desktop: install the MetaMask browser extension, then click **Connect Wallet** on the payment page
    * Mobile: scan the WalletConnect QR code with the MetaMask app's built-in scanner

    [Download MetaMask](https://metamask.io/download/)
  </Accordion>

  <Accordion title="Coinbase Wallet">
    Made by Coinbase. The easiest option if you already have a Coinbase account — you can buy USDC directly inside the app and transfer it to Base in one step.

    **Getting USDC on Base:**

    1. Buy USDC on Coinbase exchange (coinbase.com)
    2. In Coinbase Wallet app, tap **Receive** and share your Base address
    3. In Coinbase exchange, withdraw USDC to that address — select **Base** as the network

    **Connecting to PayRequest:**

    * Mobile: scan the WalletConnect QR code with Coinbase Wallet
    * Desktop: use the Coinbase Wallet browser extension

    [Download Coinbase Wallet](https://www.coinbase.com/wallet/downloads)
  </Accordion>

  <Accordion title="Rabby Wallet">
    A modern multi-chain wallet built by DeBank. Excellent for users managing multiple chains. Shows clear transaction previews before you sign.

    **Getting USDC on Base:**
    Same as MetaMask — switch to Base network and use the built-in swap or bridge.

    **Connecting to PayRequest:**

    * Mobile: scan the WalletConnect QR code
    * Desktop: use the Rabby browser extension

    [Download Rabby](https://rabby.io/)
  </Accordion>

  <Accordion title="Rainbow">
    A mobile-first wallet with a clean, beginner-friendly design. Great if you're new to crypto.

    **Getting USDC on Base:**
    Rainbow has a built-in swap and bridge. Switch to Base and buy or swap for USDC inside the app.

    **Connecting to PayRequest:**
    Mobile only — scan the WalletConnect QR code from the Rainbow app.

    [Download Rainbow](https://rainbow.me/en/)
  </Accordion>

  <Accordion title="Trust Wallet">
    A popular mobile wallet with a built-in dApp browser and support for hundreds of chains.

    **Getting USDC on Base:**

    1. Open Trust Wallet and select the Base network
    2. Use the built-in buy feature or receive USDC from another wallet/exchange

    **Connecting to PayRequest:**
    Scan the WalletConnect QR code from Trust Wallet's scanner or dApp browser.

    [Download Trust Wallet](https://trustwallet.com/)
  </Accordion>

  <Accordion title="Kraken Wallet">
    Kraken's self-custody wallet app. Ideal for Kraken exchange users.

    **Getting USDC on Base:**
    Buy USDC on Kraken exchange, then withdraw to your Kraken Wallet address on Base network.

    **Connecting to PayRequest:**
    Scan the WalletConnect QR code from the Kraken Wallet app.

    [Download Kraken Wallet](https://www.kraken.com/wallet)
  </Accordion>

  <Accordion title="Blockchain.com DeFi Wallet">
    The self-custody wallet from Blockchain.com, focused on DeFi users.

    **Getting USDC on Base:**
    Transfer USDC from Blockchain.com exchange or another wallet to your Base address in the DeFi Wallet.

    **Connecting to PayRequest:**
    Scan the WalletConnect QR code from the app's WalletConnect scanner.

    [Download Blockchain.com DeFi Wallet](https://www.blockchain.com/explorer/assets/usdc)
  </Accordion>
</AccordionGroup>

## For Merchants — Connecting to Receive Payments

To receive USDC from your customers, you connect your wallet once in **Provider Settings**. PayRequest stores your public wallet address and routes all USDC payments there via the on-chain FeeSplitting contract.

<Steps>
  <Step title="Open Provider Settings">
    From your dashboard, go to **Settings → Providers** and find the **Crypto (USDC)** card.
  </Step>

  <Step title="Click 'Connect Wallet'">
    A WalletConnect modal opens. Scan the QR code with your wallet app or click your wallet's name if you have a browser extension installed.
  </Step>

  <Step title="Approve the connection">
    Your wallet asks you to approve the connection. Tap **Connect** — no gas fee, no transaction.
  </Step>

  <Step title="Sign to verify ownership">
    Sign the verification message in your wallet (free — no gas). This proves you own the address.
  </Step>

  <Step title="Done">
    Your address appears in Provider Settings with a green **Connected** badge. All future crypto payments go directly to this address (98% of each payment).
  </Step>
</Steps>

<Tip>
  **Check your balance anytime.** Once connected, your USDC and ETH balances on Base are shown right in Provider Settings — no need to open your wallet app.
</Tip>

## For Customers — Paying an Invoice

Customers don't need to create an account. They just need a wallet with USDC on Base.

<Steps>
  <Step title="Open the payment page">
    Click the payment link shared by the business. Select **Pay with Crypto** on the checkout page.
  </Step>

  <Step title="Scan the QR code">
    A WalletConnect QR code appears. Scan it with your wallet app, or if you have a browser extension, click **Connect** instead.
  </Step>

  <Step title="Approve USDC spending (first time only)">
    Your wallet asks you to approve the PayRequest contract to spend USDC on your behalf. This is a one-time step per wallet — you won't need to do it again.
  </Step>

  <Step title="Confirm the payment">
    Your wallet shows the exact USDC amount. Confirm the transaction. Base confirms it in under 1 second.
  </Step>

  <Step title="Payment confirmed">
    The invoice is marked as paid instantly. You'll see a confirmation on the payment page.
  </Step>
</Steps>

<Warning>
  Make sure you have **USDC on the Base network** — not Ethereum mainnet, not Polygon, not Arbitrum. Sending USDC on the wrong network will not be received. Check that Base is selected in your wallet before confirming.
</Warning>

## Getting USDC on Base

If you're new to crypto and need USDC on Base, here are the easiest paths:

<CardGroup cols={2}>
  <Card title="Buy on Coinbase" icon="building-columns">
    Buy USDC on [Coinbase](https://coinbase.com), then withdraw to your wallet address on the **Base** network. Coinbase supports Base natively — no bridge needed.
  </Card>

  <Card title="Buy on Kraken" icon="building-library">
    Buy USDC on [Kraken](https://kraken.com) and withdraw to your Base wallet address. Select "Base" as the withdrawal network.
  </Card>

  <Card title="Bridge from Ethereum" icon="arrows-right-left">
    Already have USDC on Ethereum mainnet? Use the [Base Bridge](https://bridge.base.org) to move it to Base. Bridging takes a few minutes.
  </Card>

  <Card title="Swap inside your wallet" icon="arrow-path">
    Most wallets (MetaMask, Rainbow, Coinbase Wallet) have a built-in swap feature. Switch to the Base network and swap ETH or another token for USDC directly in the app.
  </Card>
</CardGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="The QR code opens the wrong app on my phone">
    This is a known issue on some Android devices where a QR scanner app intercepts the WalletConnect link instead of opening your wallet. **Fix:** long-press the QR code and copy the link, then open it directly in your wallet app's browser or WalletConnect scanner.
  </Accordion>

  <Accordion title="iOS Chrome doesn't open my wallet">
    WalletConnect deep links are blocked in Chrome on iOS (WKWebView limitation). **Fix:** use **iOS Safari** instead — WalletConnect works correctly there.
  </Accordion>

  <Accordion title="My wallet isn't listed">
    Any wallet supporting WalletConnect and Base will work, even if it's not in the list above. Look for a **WalletConnect** or **Scan QR** option in your wallet's settings or dApp browser.
  </Accordion>

  <Accordion title="Transaction failed — not enough ETH for gas">
    Base transactions require a tiny amount of ETH for gas (typically \$0.001). If you see a "insufficient gas" error, add a small amount of ETH on Base to your wallet. You can buy ETH on Coinbase or Kraken and withdraw to Base.
  </Accordion>

  <Accordion title="I sent USDC on the wrong network">
    If you sent USDC on Ethereum mainnet instead of Base, the funds are not lost — they're just on the wrong chain. Use the [Base Bridge](https://bridge.base.org) to move them to Base, or contact the exchange you used to check if they support a network correction.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Crypto Payments Overview" icon="coin" href="/payment-processing/crypto-payments">
    How USDC payments work on PayRequest, fees, and the FeeSplitting contract.
  </Card>

  <Card title="Payment Methods Overview" icon="list-check" href="/payment-processing/payment-methods-overview">
    See all payment methods available on PayRequest.
  </Card>

  <Card title="Share Your Crypto Address" icon="share-nodes" href="/payment-processing/share-wallet-address">
    Get a branded link with your wallet address, QR code, and copy button — great for giveaways and tips.
  </Card>
</CardGroup>
