In this tutorial, we explain how you can open a shared, large channel together with Coincharge, instead of two smaller Lightning channels alternately.
In the Lightning Network, the size of the channel with the channel capacity plays a decisive role. The larger a channel, the larger the amounts that can be routed through it.
Likewise, large channels ensure a better reputation in the Lightning Network, which has a positive effect on the ranking in rating lists such as the BOS Score list, Terminal Web or Amboss.
We present two alternative solutions.
The first approach is for node operators who prefer to administer their own node via a web-based user interface, using Ride the Lightning (RTL), for example.
The second approach is for technically experienced users who want to carry out administration via terminal. This is a dual-funded channel that is set up with the help of Balance of Satoshi (BoS).
Lightning Liquidity Mutual
Whoever opens a channel to Coincharge, Coincharge also opens a channel of the same size to them. For more information on opening Lightning Channel on mutual with Coincharge, see the article: Lightning Liquidity.
For example, if you open a channel of 500,000 sats to Coincharge, Coincharge will also open a channel of 500,000 sats to that.
There are then two channels of 500,000 sats each between the two nodes.
These two channels between the same nodes are also unbalanced. One channel has a local balance of 0 and all liquidity is at the remote balance and the other channel has the opposite.
It would be better if there were a common channel over 1,000,000 sats, with 500,000 sats on each side.
About the contribution, “Lightning Liquidity – Shared Lightning Channel”, there is an explainer video on Coincharge’s YouTube channel in German.
If you want to operate a common channel with Coincharge instead of two different channels, you can find the corresponding instructions here.
We are currently opening a shared channel (ChannelCapacity) in the amount of 2 million sats. Accordingly, each party provides 1 million sats.
We describe the process using the example of a channel over a total size of 2 million sats, where each channel partner provides 1 million sats each.
Open a channel with Coincharge
Connect to the Lightning Node from Coincharge. The node ID is:
0318ac9faa9629e7da08819bc8fe0dd2ae3044d69b1b2283a63479acffeb968483
After you have connected to the Coincharge peer (node), you open a channel of twice the size you want to make available in the channel.
In our example, we assume that you want to use 1,000,000 sats yourself to run a common channel over 2,000,0000 sats.
You open a channel for 2,000,000 sats and make 2,000,000 sats available in this channel.
The channel size is 2,000,000, but the Local Balance is slightly lower in this case (1,998,159 sats in this case), since the Bitcoin transaction fees for the channel opening or closing are still deducted.
You will then see in your channel overview that with you
Local Balance = 2 million sats. —- Remote Balance = 0 Sats
Create a Bitcoin address
Then you inform Coincharge that you have opened the channel. In addition, you provide us with your Bitcoin address, to which we can send the Bitcoin back to you.
Under Ride the Lightning (RTL) you generate the Bitcoin address under On-Chain -> Receive On-Chain Transaction
After you click Generate Address, you will see your on-chain Bitcoin address:
Please provide Coincharge with this Bitcoin address.
Lightning Invoice from Coincharge
You will receive a Lightning Invoice from Coincharge for half of the channel capacity. In our example in the amount of 1,000,000 sats.
You pay this Lightning Invoice. When paying, you must make sure that this payment is made through the shared channel.
If you are using Ride the Lightning (RTL), go to Lightning -> Transactions in the menu and select Send Payments.
There you enter the information from the Lightning Invoice from Coincharge and select Coincharge as First Outgoing Channelunder Advanced Options:
After you pay the Lightning Invoice, the channel will look like this:
Your Local Balance = 1,000,000 sats. — Remote Balance = 1,000,000 Sats
Reimbursement by Bitcoin
After the Lightning Invoice is paid, you will get the invoice amount replaced via Bitcoin in return. To your previously provided Bitcoin address, 1,000,000 Sats will be returned in Bitcoin (On-Chain).
Summary
To open a shared Lightning Channel, you first need the entire channel capacity.
This amount must be available to you as Bitcoin credit (on-chain) on the Lightning Node.
In our example, 2,000,000 Sats, of which 1,000,000 Sats will later be refunded to you as an on-chain transaction to your Bitcoin address.
Thus, you have wagered a total of 1 million Satoshi. These Satoshi are not gone either, but are available to you for Lightning payments.
For better illustration, we have always called smooth amounts here. It should be noted, however, that this process involves transactions over the blockchain and thus Bitcoin transaction fees are incurred.
Note: The minimum size of the shared channel is 1 million sats (each side 500,000 sats) and the maximum size is 5 million sats (each side 2,500,000 sats).
In the case of a dual-funded channel, the respective amount is already provided by the channel partner at the time of the opening of the joint channel.
The following requirements must be met:
- LND Version from 0.13
- Balance of Satoshis by Alex Bosworth https://github.com/alexbosworth/balanceofsatoshis
- Atomic Multi-Path Payments (AMP) must be activated (https://docs.lightning.engineering/lightning-network-tools/lnd/amp)
If the latest version of LND is running on your node, then you have a higher version than lnd 0.13.
Your node must be running the Balance of Satoshi (BoS) programme by Alex Bosworth.
AMP must also be activated. For this, the entry: accept-amp=1 must be added in lnd.conf.
We describe the process using the example of a common channel with a total capacity of 8 million sats. Each channel partner will thus place 4 million sats in the channel.
Both channel partners log on to their own node via terminal and switch to root mode by entering the command: sudo su –
Node 1 (here Coincharge)
Node 1 starts entering the command:
bos open-balanced-channel
You will be asked questions by the system that will guide you through the process.
The first question is about the public key of the node with which you want to open the shared channel.
? Public key of the node to request a balanced open with?
After the public key of the corresponding node has been entered, BoS starts to find the optimal route to the node.
When a route has been found, it is queried how large the common channel capacity should be:
? Total capacity of the new channel? 8000000
It is not given in BTC, but in Sats. We open a common channel with a size of 8 million sats and enter 8000000 accordingly.
Then we are asked what fee rate we are willing to pay. At the time of the channel opening, the mempool was empty and we could calculate with one vbyte.
? Fee rate per vbyte for the joint funding transaction? 1
As a last question, we have to indicate whether we want to use the amount from the balance of the internal wallet. We confirm this with Yes.
? Use internal wallet funds? Yes
After these steps have been successfully completed, Node 2 must become active.
Node 2 (here hottrail)
Node 2 also enters the following command in its terminal window:
bos open-balanced-channel
and then receives a message that Coincharge has made a request for a balanced channel. The node ID of Coincharge is displayed, as well as the total size of the channel and the channel fee. This request is to be confirmed with Yes.
? Balanced channel request 2 minutes ago from coincharge 0318ac9faa9629e7da08819bc8fe0dd2ae3044d69b1b2283a63479acffeb968483: – 0.08000000 channel at 1/vbyte chain fee rate? Yes
The next question also refers to whether the credit from the internal wallet should be used. This is also confirmed with Yes.
? Use internal wallet funds? Yes
For Node 2, the following information is displayed in the view via Thunderhub.
To check the status on the blockchain, the funding_tx_id is searched in the Bitcoin Explorer of Mempool.space.
Now the payment is sent to the blockchain. Half of the channel capacity is paid and half of the transaction fee for writing to the blockchain.
After the six confirmations are completed on the blockchain, the RTL view on Coincharge will show the shared channel as follows:
For Node 1 (Coincharge) the Local Balance is 3,997,939 and the Remote Balance is 4,000,000.
For Node 2 (hot trail) the local balance is 4,000,000 and the remote balance is 3,997,939.
The total channel capacity is 8 million sats.
Summary
Opening a Dual Funded Channel using Balance of Satoshi (BoS) and AMP is surprisingly easy. Those who are familiar with handling via terminal should open a joint channel with their channel partner in this way.
Anyone who would like to open a joint channel with Coincharge, please contact us via the following contact form for opening a Dual Funded Channel via BoS.
To open a shared channel via web, please use the form “Shared channel via web“.
Alternatively, there are numerous other nodes in the Lightning community with which you can open a joint channel. Use this guide to connect with each other and make the Lightning Network even stronger and therefore more successful.
Open a Dual Funded Channel with Coincharge
ATTENTION: For technical reasons, it is currently not possible to create a shared channel via BOS (Balance of Satoshi). For those who want to run a shared channel with Coincharge, please use the method described above.
To open a Dual Funded Channel with Coincharge, please act as Node 1. Follow the steps described above on your Node. Connect to our node with the following node ID: 0318ac9faa9629e7da08819bc8fe0dd2ae3044d69b1b2283a63479acffeb968483
Set the total capacity of the channel (minimum 1 million sats, maximum 5 million sats) and the transaction fee. Each party then bears half of the total capacity.
Then please inform us via the contact form below so that we can confirm your details with Yes.
But you can also contact us via Telegram and we can do the channel opening together: https://t.me/coinchargeio