Skip to main content

How to Decode A Lightning Invoice

Rizful's Lightning Invoice Decoder makes Lightning Network invoices human-readable — especially for developers and node operators who need to quickly verify invoice details without squinting at hex strings.

Paste a BOLT11 invoice (it starts with lnbc) and the decoder shows what it asks for, whether it can still be paid, and anything about it that's likely to make a payment fail.

🔍 Try the Invoice Decoder →

Step by Step​

1. Paste the invoice​

Open the Lightning Invoice Decoder and paste the invoice into the box. Here we decode a fresh 1,000-sat invoice from rizful@rizful.com.

Paste the invoice into the box
Paste the invoice into the box

2. Click "Decode Invoice"​

The decoder only reads the invoice: it never pays it.

Click 'Decode Invoice'
Click 'Decode Invoice'

3. Check the expiry​

The banner counts down the time left to pay. It turns amber in the last 2 minutes and red once the invoice has expired.

The countdown shows how long the invoice can still be paid
The countdown shows how long the invoice can still be paid

4. Read the checks​

Each check is in plain language. This one notes that the description is stored as a hash, which is normal for invoices from a Lightning Address.

Each check in plain language
Each check in plain language

5. See who you're paying​

The payee card shows the node's alias, whether it's a public node, keysend support and the route hints.

The payee node and its alias
The payee node and its alias

What the Decoder Shows​

A Live Expiry Countdown​

Every invoice has an expiry, often an hour, and an expired invoice can't be paid. The decoder counts down in a banner: green "Valid for …" while there's time, amber in the last 2 minutes, and red once it has expired, with the advice to ask the recipient for a new one.

Plain-Language Checks​

The decoder flags the things that commonly stop a payment:

  • The network. A mainnet invoice starts with lnbc. An invoice for testnet, signet or regtest can't be paid by a normal wallet.
  • No amount. The payer chooses how much to send. That's allowed, but some wallets and exchanges can't pay these invoices, so check the amount with the recipient.
  • Created in the future. The invoice's creation time is ahead of your clock, so the recipient's device clock (or yours) is probably wrong, and some wallets may refuse it.
  • A very short expiry. Pay it straight away, or ask for a new one if it runs out.
  • No payment secret. Modern Lightning wallets require one, so many of them will refuse to pay the invoice.
  • A description hash. Normal for invoices from a Lightning Address or LNURL: the invoice carries a hash of the description instead of the text. How to test a Lightning Address explains how wallets check that hash.

The Payee Node​

A card shows the node being paid: its alias, whether it's a public node in the Lightning graph, whether it supports keysend, and how many route hints the invoice carries.

A private node reached through route hints is normal for mobile and custodial wallets: the node isn't announced, and the hints tell the payer's wallet which public nodes it's connected to. A private node with no route hints is flagged, because most wallets won't find a route to it.

Pasted the Wrong Thing?​

If what you paste isn't an invoice, the decoder points you to the right tool: a Lightning Address to the Lightning Address Tester, a Bitcoin address to the Bitcoin Address Checker, and a 64-character transaction ID to the Unconfirmed Transaction Checker.

What Makes This Decoder Different?​

Node Aliases​

Ever tried to figure out which node you're paying by staring at a 66-character public key? Rizful's decoder shows you the human-readable alias for destination nodes and route hint nodes. Much easier on the eyes.

Clear Route Hints​

Private invoices include routing hints that tell your wallet how to reach the payee. Rizful's decoder displays these with node names, fee rates, and channel IDs in an understandable format.

Privacy First​

Your invoice data is processed securely and never stored. The decoder only reads the invoice: it never pays it, never contacts the payee, and doesn't probe a route, so it can't promise that a payment will succeed.

🔍 Decode an Invoice Now →