We are very excited to share something we’ve been working on at Voltage. A new service we are calling Flow 2.0.
This is a new LSP that is focused on making liquidity an available resource Just In Time. With Flow 2.0, a user no longer has to think about inbound capacity or what channels they have.
Our LSP will be able to detect a payment and open a channel instantly to ensure the payment can reach your node. This will allow all service providers, app developers, or merchants to offer a noncustodial, private, and seamless experience with almost zero effort and maximum efficiency.
About Flow 2.0
We released the initial version of Flow over a year ago. It was created as an easy way to purchase persistent channels of a given size to help users get inbound (and outbound) capacity. This was a great start and a helpful tool for users to set up their own liquidity, but it was clear the gap between user need and fulfillment was still too large. We could do better.. So we created Flow2.0 to provide liquidity at the exact moment it was needed. No gap.
There are a couple of examples where static channel provisioning falls short. First is the merchant use case. The last thing a merchant wants to do is monitor their channel capacity, they want to receive payments without thinking about it. Secondly, noncustodial applications need liquidity but developers don’t want to have to write complex channel management in their apps or lock up their own liquidity. Flow 2.0 solves these issues (as well as others) by enabling a receiver to have zero liquidity and still receive payment via Voltage’s liquidity.
These are just a couple of examples where we’ve already seen demand arise and it’s only the beginning. Imagine onboarding someone to BTCPay Server without requiring channels, signing up new users to your application without opening your own channels, or being able to handle large spikes in payment volumes. The Lightning Network has been needing a solution to abstract away liquidity for all users and Flow 2.0 will do that.
See It In Action
Flow 2.0 is a noncustodial way to easily receive Lightning payments without thinking about channels. To demonstrate how powerful this LSP is, we’ve recorded a video as an example on how to use it. As you will see in the video, this LSP is very simple to use. Whether you just want to easily accept a payment to your own node or you need help managing your Lightning wallet’s liquidity. It’s capable of doing it all.
To understand more of the details about how it works, please see the bottom section of this article.
This LSP is available for use today on testnet with mainnet coming soon. You can test how the LSP works at a simple example site here, https://app.voltage.cloud/flow/ondemand. You can also use the API directly by following our documentation. We are eager to hear feedback and learn how developers and node runners could leverage this. Please join our LSP Waitlist to get in contact with us about your use case. Shipping season has started!
How It Works
This LSP is created by leveraging zero-conf channels and preimage hashes. With these capabilities of Lightning, we can determine on the fly if a new channel is required, open it instantly if necessary, and send the payment to the receiver without ever taking custody of funds. Here’s how it works:
- The Receiver generates an invoice on their node.
- The Receiver sends their invoice to the Voltage LSP.
- The Voltage LSP returns a new invoice with the same preimage hash but the LSP Pubkey.
- Receiver gives this new ‘Wrapped Invoice’ to the Sender.
- The Sender pays the invoice which goes to the LSP.
- The LSP detects the payment and opens a zero-conf channel to the Receiver.
- The LSP forwards the payment to the receiver and the payment is completed.
This process has several benefits to highlight. First, the Wrapped Invoice uses the same preimage hash as the original invoice. This means that the LSP can’t settle the payment without the final Receiver completing the payment. Secondly, the invoice that’s given to the Sender contains the Voltage LSP’s public key meaning an increase in privacy for the Receiver. The Voltage LSP knows the Receiver but no one else does. Finally, this works even if the Receiver has 0 channels. There is no requirement to have any kind of liquidity established, you can start from a brand new node. Of course, it’s important to mention that zero-conf channels are a trusted mechanism until the channel has confirmations on the blockchain.