Bitcoin payment requests

What Is a Lightning Invoice? Payment Requests, Expiry and Status

A Lightning invoice is a request to receive a Bitcoin payment through the Lightning Network. The recipient's wallet creates the request; the sender opens it in a compatible wallet and reviews the payment details. A QR code can carry the invoice, but the code itself is not a receipt.

This guide focuses on BOLT 11 invoices, a widely used Lightning payment-request format. It separates three questions that are easy to confuse: Is the request still valid? Has a payment started? Has that payment completed?

For an ordinary Bitcoin blockchain transfer, use the separate guide to sending Bitcoin. Do not paste a Lightning invoice into a field that accepts only an on-chain address.

By Crypto Dispensers · September 27, 2026

What is inside a Lightning invoice?

An invoice carries information the sending wallet needs, including a payment hash, creation time, expiry conditions and a signature. It can specify an amount, describe the request and include information that helps route the payment. Some invoices omit the amount so the sender can enter it.

A mainnet BOLT 11 invoice starts with lnbc; a link may put lightning: before the encoded string. Recognizing those characters is only a clue. Let a compatible wallet validate and display the request rather than manually editing it. Uppercase invoice text in a QR code can be normal. Lightning Labs explains the format and decoding.

Two practical checks matter more than reading the encoded characters:

  • Amountless does not mean free. Confirm the amount you enter and the final total your wallet displays. If units are confusing, review Bitcoin and satoshi conversion.
  • A valid invoice is not proof of a trustworthy recipient. Confirm where the request came from. A working QR code can still request payment to the wrong person.

Creating or sharing an invoice does not transfer bitcoin. The recipient should check their own wallet's payment record before treating a purchase or debt as paid.

How to request and pay a Lightning invoice

The exact buttons vary, but the basic sequence is straightforward:

  1. The recipient selects Lightning receive. Confirm that the receiving app supports this route, then set the amount if the request needs one.
  2. The recipient shares the fresh request. Use the wallet's copy or QR function. Check the displayed expiry before sending it to someone who may pay later.
  3. The sender opens it in a compatible wallet. Review the amount, request details and displayed fee or total. If the wallet rejects the format, confirm support instead of changing characters to make it fit.
  4. The sender confirms once and checks the result. The recipient independently checks whether their wallet marks the invoice paid or settled.

In LND's receiving workflow, generating the invoice and observing its settlement are separate operations. Treat a paid BOLT 11 invoice as completed; generate a fresh request for a new payment.

Wallets and services can impose their own limits, fees and availability conditions. Read the current interface and provider help. This educational guide does not establish that a particular Crypto Dispensers product supports Lightning.

Invoice expiry, quote expiry and payment timeout are different

There is no universal lifetime for every invoice. BOLT 11 defines expiry relative to the invoice's creation timestamp. The receiving wallet can specify the duration. The protocol describes the expiry rules; your wallet should show the relevant deadline.

For a concrete provider example, Coinbase's Lightning help currently says its generated invoices are valid for 72 hours. That is a Coinbase policy, not a network-wide rule.

A service can also give the sender a payment quote with a separate deadline. Strike's API documentation distinguishes an expired quote from an expired invoice: a still-valid invoice can get a new quote, while an expired invoice requires a new request and quote.

Consider this invented example:

Event What it means
A request is created at 2:00 p.m. with a 15-minute expiry Its stated deadline is 2:15 p.m.
The sender receives a quote valid until 2:03 p.m. That quote can expire before the invoice does.
At 2:05 p.m., no payment has been started The sender may need a refreshed quote, not necessarily a new invoice.
A payment was started and remains in flight at 2:16 p.m. The expired request does not prove that the attempted payment failed. Check its status before doing anything else.

The times are illustrative, not a provider promise. Do not use an invoice's countdown as a payment-cancellation timer. An attempted payment has its own resolution process.

What to check when a payment does not complete

Start with the status of the specific payment attempt. An unpaid request, a failed attempt and an unresolved attempt call for different actions.

  • Expired, with no payment attempted: ask the recipient for a fresh invoice. Review the new amount and destination before confirming.
  • Failed: read the wallet's reason. A route can fail because a node is unavailable or there is insufficient channel balance in the needed direction. Follow the wallet's retry guidance after confirming the previous attempt is final.
  • Pending or in flight: avoid creating a second payment just because time has passed. Check the sending wallet's record and contact its support if the status remains unresolved.
  • Succeeded, but the recipient cannot find it: compare the amount, time and recipient request through a trusted conversation. Use the provider's payment reference when asking for help.

Lightning Labs' sending documentation explains why a payment already committed along a route must resolve as successful or failed. That is different from a request that nobody has attempted to pay.

Keep payment records private when possible. Do not post an invoice, payment proof or account screenshot publicly merely to diagnose a delay. Support does not need your wallet recovery words or private keys.

Invoice, Lightning address or BOLT 12 offer?

The request your wallet displays may be part of a different payment flow. Do not assume every reusable identifier is an invoice.

Format What it represents
BOLT 11 invoice An encoded Lightning payment request with its own details and expiry.
Lightning address, such as name@example.com An email-shaped identifier used by compatible wallets to obtain payment instructions. An ordinary email address is not automatically a Lightning address.
BOLT 12 offer An offer from which a compatible wallet requests an invoice. The offer can outlive an individual invoice.
On-chain Bitcoin address A destination for a Bitcoin blockchain transaction, using a different payment route.

The Lightning Address specification describes its relationship to LNURL-pay. BOLT 12 distinguishes an offer from the invoice requested from it. Support depends on the wallet; one supported format does not establish support for all of them.

Can I use the same invoice for another payment?

Use a fresh BOLT 11 invoice for a new payment. If you need a reusable receiving identifier, check whether both wallets support an appropriate Lightning address or offer flow.

Does scanning the QR code pay it?

Scanning supplies payment instructions to the app. Review what the app displays and its confirmation flow. A QR code does not prove that funds arrived. See the broader guide to payment QR codes and cash-loading barcodes.

Does an expired invoice mean my bitcoin disappeared?

An unpaid request expiring does not itself spend bitcoin. If you already attempted payment, check that attempt's status; expiry alone does not establish the result.

Sources checked September 27, 2026. Provider interfaces and policies can change. The examples explain payment mechanics and are not instructions to make a particular purchase or investment.