LNURL
🙂 bitcoin link
You can make a text link, button, or QR code on your website for Bitcoin payments or donations. It is simply your wallet address. A Bitcoin address QR code can include the suggested amount to pay. Once you display the address, you don’t have to do anything further. Anyone can pay you, with any amount, at any time. The same address can be used for as many transactions as you like, it does not expire.
But what about lightning invoices?
🙁 lightning invoice
For lightning payments, creating a link is not so simple! A lightning address is possible, but this does not include any transaction information and is useful for donations mostly, where the amount is variable.
Your customer or a donor cannot initiate a transaction, they need an invoice from you first. The main problem is that a lightning invoice can be used only once. So you would have to post a new invoice every time a customer wants to buy from you. Also, you need to be always online.
The second problem is that a lightning invoice will expire (default 60 minutes). Tomorrow, if someone clicks or scans it, it has already expired.
Even worse, a lightning invoice is only in sats. The bitcoin price fluctuates, so tomorrow the invoice could charge $20 for a $5 cup of coffee!
🙂 LNURL
Fortunately there is the LNURL protocol (using BOLT 11 with LND or Core Lightning).
A service like LNbits can create a LNURL link or QR code for you to put on your website. The link can be used multiple times, and the link never expires. The service is always online. If someone clicks/scans the link, the server will immediately create a fresh lightning invoice on your behalf and send it to them. It can also convert a fixed dollar/fiat price to sats at the time of transaction. Awesome.
Unfortunately this only works if the sender has a LNURL compatible wallet:
Alby, Blixt, BlueWallet, Breez, CoinCorner, coinos, LifPay, LNbits, LightningTipBot, Muun, Phoenix, Pouch.ph, OBW, Wallet of Satoshi, Zap Android, Zap Desktop, Zap iOS, ZBD, Zeus
- customer wallet scans LNURL
- wallet automatically connects to the server
- server creates lightning invoice
- server sends invoice to customer wallet
- customer pays invoice
- next customer scans same LNURL
bitcoin address
🙂
lightning invoice
🙁
LNURL
🙂