2

I'm aware that when I first open a channel, all of the channel balance is on my side, so I can only send and not receive.

So, I opened a channel and then sent my counterparty 1500 millisatoshis—but I can still only send and not receive. What's going on?

I'm using Lightning Dev Kit (LDK).

Murch
  • 71,155
  • 33
  • 180
  • 600
Val Wallace
  • 101
  • 5
  • What implementation is at the other end of the channel, also LDK? – Adam B Jan 13 '23 at 08:38
  • If using `ldk-sample`, can you show the output of `listchannels` commands? – Adam B Jan 13 '23 at 08:42
  • To be clear, I've asked and answered this question as it's a commonly asked question on the LDK discord – Val Wallace Jan 13 '23 at 18:56
  • 1
    Does the implementation on the other side matter? I would assume that LDK does not permit capacity to be transferred when the remainder falls below the channel reserve. And since it takes two to tango… – Murch Jan 13 '23 at 21:48

1 Answers1

2

This is an effect of the channel reserve.

The channel reserve is enforced to ensure each counterparty always has something to lose, if they were to try to cheat. By default, the channel reserve is 1% of the channel capacity, and LDK sets a hard minimum of 1000sats.

Therefore, if you were to send enough such that more than max(1% of channel capacity, 1000sats) were on your counterparty’s side, your available balance for receive would increase.

Since you only sent 1500msats (1.5sats), the amount is still below the channel reserve for the counterparty and none of their funds can move to you.

Murch
  • 71,155
  • 33
  • 180
  • 600
Val Wallace
  • 101
  • 5