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

# Introduction

> Accept stablecoin payments on every major chain, settled to wallets you control

**Puffin Pay** is the crypto payment gateway by MacLeod Technologies. Your
customers pay in stablecoins (USDC, USDT, EURC, USDG, PYUSD and more) on any
supported network — Solana, Ethereum, Base, Polygon, BSC, Arbitrum, Optimism
or XDC — and you get confirmation webhooks, a dashboard, and receipts.

## Ways to integrate

<CardGroup cols={2}>
  <Card title="Payment links" icon="link" href="/payment-links">
    Zero code. Create a link in the dashboard, share it anywhere.
  </Card>

  <Card title="Hosted checkout" icon="globe" href="/hosted-checkout">
    One API call creates a payment; redirect your customer to our checkout page.
  </Card>

  <Card title="Embedded (iframe SDK)" icon="code" href="/embed">
    Drop `puffin.js` into your site and open checkout in a modal — customers never leave.
  </Card>

  <Card title="Wallet-as-a-Service" icon="wallet" href="/wallets">
    Need standing wallets rather than one-off payments? Create and manage
    USDC/USDT wallets across chains directly over the API.
  </Card>
</CardGroup>

Moving funds between chains once you're holding them? See
[Bridging & swaps](/bridging) — native CCTP V2 where it applies, NEAR
Intents everywhere else.

## How a payment works

1. You create a **payment intent** (amount + token + chain).
2. Puffin mints a **fresh deposit address** for that payment.
3. Your customer pays; we detect and confirm on-chain.
4. The intent flips to `CONFIRMED`, your webhook fires (HMAC-signed), and the
   dashboard updates in real time.

Every payment address is single-use — no amount-matching heuristics, no
crossed payments.

## Pricing

Fees are set by your subscription plan (Starter 1.5%, Growth 1.0%, Scale
0.6%) or a custom rate. See [Teams & plans](/teams-and-plans).
