> ## 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.

# Payment links

> Share a URL, get paid — no code required

Payment links are reusable URLs you create in the dashboard. Each visit
mints a fresh payment intent, so one link can collect unlimited payments.

## Create a link

1. Dashboard → **Payment links** → set a title, choose token & chain.
2. Set a fixed amount, or leave it blank to let the customer choose
   (donations, tips, pay-what-you-want).
3. Share `https://pay.puffinmoney.com/link/<slug>` — chat, invoice,
   email signature, QR on a receipt, anywhere.

## Programmatic use

Create an intent from a link (public endpoint, no API key):

```bash theme={null}
curl -X POST https://api.puffinmoney.com/v1/gateway/public/links/<slug>/intent \
  -H "Content-Type: application/json" \
  -d '{ "amount": "10.00", "customerEmail": "buyer@example.com" }'
```

```json theme={null}
{ "intentId": "9b1f…" }
```

Then send the customer to `/pay/<intentId>` or open it with the
[iframe SDK](/embed):

```js theme={null}
PuffinPay.openLink({ slug: 'consulting-invoice-x7k2m9', amount: '150.00' });
```

<Note>
  Amount is required in the request only when the link has no fixed amount.
</Note>
