Spontaneous payments
Spontaneous payments is the ability of one LN node to pay another node without receiving an invoice first.
The invoice used for regular LN payments contains a hash that the payer and each routing node uses as part of the Hash-Time-Locked-Contract. Spontaneous payments need to replicate this security mechanism but without the invoice mechanism for communication. At least two different mechanisms have been proposed for accomplishing this:
- ● Add data to the routing packet (keysend): the person sending the payment chooses a hash pre-image, encrypts it to the receiver’s key, and appends it as extra data in the routing packet. When the payment arrives at the receiver, they can decrypt the data and use the pre-image to claim the payment.
Optech newsletter and website mentions
2022
2021
- LND #5803 allows multiple spontaneous payments to the same invoice
- Rust-Lightning #967 adds support for sending keysend-style spontaneous payments
- LND #5108 adds support for spontaneous multipath payments using AMP
- C-Lightning #4404 allows keysending to nodes that don’t advertise support
2020
- Eclair 0.4.2 adds support for keysend-style spontaneous payments
- Eclair #1485 adds support for keysend spontaneous payments
- Zap 0.7.0 Beta adds support for spontaneous payments
- C-Lightning #3792 adds support for sending keysend spontaneous payments
- LND #4167 allows spontaneous payments made using keysend to be held
- Juggernaut uses spontaneous payments for messaging and instant payments”
- Breez wallet adds support for spontaneous payments
- C-Lightning 0.8.2 released with a plugin for sending spontaneous payments
- C-Lightning #3611 adds a keysend plugin to support spontaneous payments
- Eclair 0.3.3 adds experimental support for trampoline payments
2019
Previous Topic:
Splicing
Next Topic:
Statechains