Chapter 15. Lightning Payment Requests
In this chapter we will look at Lightning payment requests, or as they are more commonly known, Lightning invoices.
Invoices in the Lightning Protocol Suite
Payment requests, aka invoices, are part of the payment layer and are shown in the upper left of Figure 15-1.
Figure 15-1. Payment requests in the Lightning protocol suite
Introduction
As we’ve learned throughout the book, minimally two pieces of data are required
to complete a Lightning payment: a payment hash and a destination. As
SHA-256 is used in the Lightning Network to implement HTLCs, this information
requires 32 bytes to communicate. Destinations, on the other hand, are
simply the secp256k1 public key of the node that wishes to receive a payment.
The purpose of a payment request in the context of the Lightning Network is to
communicate these two pieces of information from sender to receiver. The QR-code-friendly format for communicating the information required
to complete a payment from receiver to sender is described in BOLT #11: Invoice Protocol for Lightning Payments. In practice, more than just the
payment hash and destination are communicated in a payment request to
make the encoding more fully featured.
Lightning Payment Requests Versus Bitcoin Addresses
A commonly asked question when people first encounter a Lightning Payment request is: why can’t a normal static ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access