# BIP-21

> BIP-21 is the Bitcoin URI scheme that lets a QR code carry an address plus an optional amount, label and message. It is why every Bitcoin wallet interprets a scanned payment code the same way.

Source: https://useqr.app/glossary/bip21 · Last reviewed 2026-08-21 · UseQR is free forever, MIT licensed, no signup.

---

## The format

```
bitcoin:bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq?amount=0.001&label=Coffee
```

| Parameter | Meaning |
|---|---|
| `amount` | BTC, up to 8 decimals — **not** satoshis |
| `label` | Recipient name |
| `message` | Note to the payer |
| `lightning` | BOLT-11 invoice, for a unified code |

## Two things that catch people out

**Units.** `amount=1` is one whole bitcoin. Entering a satoshi figure here requests an
absurd sum, and the wallet will display it without complaint.

**Case.** Bech32 addresses (`bc1…`) are case-insensitive and can be uppercased so the
encoder uses alphanumeric mode — about 30% fewer modules. Legacy base58 addresses are
case-sensitive and cannot.
