Author: Joost Jager 2021-09-21 13:17:10
Published on: 2021-09-21T13:17:10+00:00
The email exchange between fiatjaf and Joost discusses two proposals related to Lightning Network payments. The first proposal suggests that implementations should offer a "stateless invoice" API for receiving payments using the payment_secret, which is considered simple to implement and does not require cooperation from anyone. The second proposal involves attaching TLV records with encoded order details when sending payments, which is harder to implement due to requiring full network compatibility. However, it is essential as payees would have to keep track of all the invoice IDs related to orders they refer to. While network-wide upgrade including all routing nodes may not be necessary for the second proposal, a new tag for bolt11 and node implementations that carry over the contents of this field to a tlv record would be needed. In terms of application-specific workarounds, there are several options available for the second proposal, such as having a fixed, hardcoded set of possible orders, encoding the order minimally in the payment secret or route hint, storing order details on redis for only 3 minutes, and using lnurlpay to reduce the delay between invoice issuance and user confirmation to zero.Joost adds that a stateless invoice API would be an excellent addition, and he has prototyped it in lnd. He also mentions that implementing it so that a regular invoice is inserted 'just in time' is not too involved. Overall, both proposals aim to improve the Lightning Network payment process and provide more efficient solutions for payees and senders.
Updated on: 2023-06-03T05:56:37.042242+00:00