When an LN channel is created, it is funded with an initial BTC amount by at least one one peer. But given that most of the whole idea of LN is the existence of long running channels, I wonder if this means that it's possible for a channel to be "emptied", thus making "long running" a bit of a misnomer. Is it therefore possible for the channel's creator to "top up" the channel?

  • There is some work being done here with splicing, where the channel partipants agree to spend the output of the opening TX together with additional inputs to a new multisig output from which to create commitment txs, thereby increasing channel capacity.
    – James C.
    Jan 6 '19 at 21:39
  • Splicing in and splicing out, as funds could also be reduced. However both results in a new tx confirmed on chain, which is the cost of adjusting the channel capacity after it has been opened.
    – James C.
    Jan 6 '19 at 21:41

No. The amount of money in a channel cannot be changed once the channel exists. Channels cannot be topped up nor can they be "cashed out". Any change to the channel balance would require using new outputs and funding transactions. If it were the same channel (so the channel state is not committed to the blockchain), then fraud could occur where an old commitment transaction is broadcast that was from before new funds were added to the channel.

However, there is work on splicing, but that's more like closing a channel and jointly opening a new one.

  • Thanks both of you for your time. Very helpful.
    – theruss
    Jan 6 '19 at 21:56
  • though it is not quite clear which of the splicing proposals will be used so I would say it is only one way to splice a channel to close and jointly open a new one. Technically splicing should run asynchronously in the sense that the channel stays operationally during the splicing operation Jan 6 '19 at 22:00

Currently the capacity of a channel stays the same. However on the Lightning Developer Summit in Australia in November 2018 it was agreed that Splicing should be added to lightning. With splicing you can increase or decrease the capacity of a channel (and your balance)

If you don't care about capacity but just about the balance and you want to refill the channel of your channel there are four things you can do:

  1. You can receive a lightning payment by selling some good (:
  2. If you just fund to fill up capacity you could use a submarine swap which works by sending bitcoin in order to pay for a lightning invoice.
  3. You can also use exchange services like zigzag.io in order to send money from your channel to a bitcoin address.
  4. You can route a payment to yourself in order to rebalance 2 of your channels.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.