Skip to main content

LNURL | Bitcoin Glossary | Mapping Bitcoin

LNURL

Lightning

Also known as: LNURL-pay, LNURL-withdraw, LNURL-auth

A set of protocols that simplify Lightning Network interactions by encoding payment flows into simple HTTP links or QR codes. LNURL enables features like static payment links (LNURL-pay), withdrawals (LNURL-withdraw), and authentication (LNURL-auth).

Overview

LNURL is a suite of protocols designed to improve the user experience of the Lightning Network by abstracting away the complexities of invoice generation and payment flows. Instead of requiring a fresh invoice for every payment, LNURL uses HTTP callbacks to coordinate payment details between sender and receiver dynamically.

Key LNURL Protocols

┌─────────────────────────────────────────────┐
│              LNURL Protocol Suite            │
├──────────────┬──────────────────────────────┤
│ LNURL-pay    │ Static payment links/QR      │
│ LNURL-withdraw│ Pull payments, faucets      │
│ LNURL-auth   │ Passwordless login           │
│ LNURL-channel│ Hosted channel requests      │
└──────────────┴──────────────────────────────┘
  • LNURL-pay: Allows a recipient to present a static QR code or link. When scanned, the payer's wallet contacts the recipient's server to fetch a fresh invoice. This solves the single-use invoice problem.
  • LNURL-withdraw: Enables pull payments, where a service creates a withdrawal link that a user can redeem. Common in faucets, rewards, and point-of-sale refunds.
  • LNURL-auth: Provides cryptographic authentication using Lightning keys, enabling passwordless login to websites and services.

Lightning Address

The Lightning Address protocol ([email protected] format) is built on top of LNURL-pay. It maps a human-readable email-like address to an LNURL-pay endpoint, making receiving Lightning payments as simple as sharing an email address.

How It Works

  1. A service encodes a URL as a bech32 LNURL string
  2. The user's wallet decodes the string and fetches the URL
  3. The server responds with payment parameters (min/max amount, description)
  4. The wallet generates the appropriate Lightning action (pay, withdraw, etc.)

Common Misconceptions

LNURL requires the recipient to run an always-online HTTP server, which makes it inherently less decentralized than raw Lightning invoices. Users should be aware that the server operator can potentially log metadata about payment requests.