How to scan and verify a Bitcoin QR payment
Read a Bitcoin payment request safely, check its amount and distinguish an on-chain URI from a Lightning invoice.
The quick answer
A QR code is a way to carry payment data. It can contain an address, a Bitcoin URI or another request type; it does not authenticate the merchant.
Check the decoded request
Bitcoin URIs can include an amount in decimal BTC and a label. The amount field uses a decimal point, not a local comma. Wallet support for additional payment options varies.
Step by step
- 1
Scan with the intended wallet
Use your Bitcoin wallet's scanner. Check whether it recognizes an on-chain destination or a Lightning request before continuing.
- 2
Verify what was decoded
Compare the merchant, network, full destination and amount through a trusted channel. A label is user-provided text, not identity verification.
- 3
Review the actual payment
Check the wallet's final BTC amount and fee. Stop if required options are unsupported or the result differs from the merchant's current invoice.
Worked example
An amount field of amount=0.0005 requests 0.0005 BTC, or 50,000 sats. It does not request 0.0005 units of your local currency.
Before you continue
A related question
Can I reuse an old payment QR?
A plain on-chain address may still work, but merchant invoices and Lightning requests can expire or be single-use. Get the current request before paying.
Try it with a tool
Sources & further reading
Source links checked on 15 Oct 2026. Examples explain the mechanics; provider fees and features can change.