core-lightning/doc/lightning-openchannel_init.7
niftynei f24bbac8d9 channel leases: pass expected lease rates around in compat form
We need to know what the lease we're expecting is. To do this
we pass around the hex encoded portion of the wire format.

We can use this passed in expected lease rates to confirm that the peer
is, in fact, using the same rates as what we have currently.

Changelog-Added: JSON-RPC: fundchannel, multifundchannel, and openchannel_init now accept a 'compact_lease' for any requested funds
2021-07-20 13:28:38 -04:00

128 lines
4.3 KiB
Groff
Generated

.TH "LIGHTNING-OPENCHANNEL_INIT" "7" "" "" "lightning-openchannel_init"
.SH NAME
lightning-openchannel_init - Command to initiate a channel to a peer
.SH SYNOPSIS
\fBopenchannel_init\fR \fIid\fR \fIamount\fR \fIinitalpsbt\fR [\fIcommitment_feerate\fR] [\fIfunding_feerate\fR] [\fIannounce\fR] [\fIclose_to\fR] [\fIrequest_amt\fR] [\fIcompact_lease\fR]
.SH DESCRIPTION
\fBopenchannel_init\fR is a low level RPC command which initiates a channel
open with a specified peer\. It uses the openchannel protocol
which allows for interactive transaction construction\.
\fIid\fR is the node id of the remote peer\.
\fIamount\fR is the satoshi value that we will contribute to the channel\.
This value will be \fIadded\fR to the provided PSBT in the output which is
encumbered by the 2-of-2 script for this channel\.
\fIinitialpsbt\fR is the funded, incomplete PSBT that specifies the UTXOs and
change output for our channel contribution\. It can be updated,
see \fBopenchannel_update\fR; \fIinitialpsbt\fR must have at least one input\.
Must have the Non-Witness UTXO (PSBT_IN_NON_WITNESS_UTXO) set for
every input\. An error (code 309) will be returned if this requirement
is not met\.
\fIcommitment_feerate\fR is an optional field\. Sets the feerate for
commitment transactions: see \fBfundchannel\fR\.
\fIfunding_feerate\fR is an optional field\. Sets the feerate for the
funding transaction\. Defaults to 'opening' feerate\.
\fIannounce\fR is an optional field\. Whether or not to announce this channel\.
\fIclose_to\fR is a Bitcoin address to which the channel funds should be
sent on close\. Only valid if both peers have negotiated
\fBoption_upfront_shutdown_script\fR\.
\fIrequest_amt\fR is an amount of liquidity you'd like to lease from the peer\.
If peer supports \fBoption_will_fund\fR, indicates to them to include this
much liquidity into the channel\. Must also pass in \fIcompact_lease\fR\.
\fIcompact_lease\fR is a compact represenation of the peer's expected
channel lease terms\. If the peer's terms don't match this set, we will
fail to open the channel\.
.SH RETURN VALUE
On success, an object is returned, containing:
.RS
.IP \[bu]
\fBchannel_id\fR (hex): the channel id of the channel (always 64 characters)
.IP \[bu]
\fBpsbt\fR (string): the (incomplete) PSBT of the funding transaction
.IP \[bu]
\fBcommitments_secured\fR (boolean): whether the \fIpsbt\fR is complete (always \fIfalse\fR)
.IP \[bu]
\fBfunding_serial\fR (u64): the serial_id of the funding output in the \fIpsbt\fR
.RE
If the peer does not support \fBoption_dual_fund\fR, this command
will return an error\.
If you sent a \fIrequest_amt\fR and the peer supports \fBoption_will_fund\fR and is
interested in leasing you liquidity in this channel, returns their updated
channel fee max (\fIchannel_fee_proportional_basis\fR, \fIchannel_fee_base_msat\fR),
updated rate card for the lease fee (\fIlease_fee_proportional_basis\fR,
\fIlease_fee_base_sat\fR) and their on-chain weight \fIweight_charge\fR, which will
be added to the lease fee at a rate of \fIfunding_feerate\fR \fI \fRweight_charge*
/ 1000\.
On error the returned object will contain \fBcode\fR and \fBmessage\fR properties,
with \fBcode\fR being one of the following:
.RS
.IP \[bu]
-32602: If the given parameters are wrong\.
.IP \[bu]
-1: Catchall nonspecific error\.
.IP \[bu]
300: The amount exceeded the maximum configured funding amount\.
.IP \[bu]
301: The provided PSBT cannot afford the funding amount\.
.IP \[bu]
304: Still syncing with bitcoin network
.IP \[bu]
305: Peer is not connected\.
.IP \[bu]
306: Unknown peer id\.
.IP \[bu]
309: PSBT missing required fields
.IP \[bu]
310: v2 channel open protocol not supported by peer
.IP \[bu]
312: Channel in an invalid state
.RE
.SH SEE ALSO
lightning-openchannel_\fBupdate\fR(7), lightning-openchannel_\fBsigned\fR(7),
lightning-openchannel_\fBabort\fR(7), lightning-openchannel_\fBbump\fR(7),
lightning-fundchannel_\fBstart\fR(7),
lightning-fundchannel_\fBcomplete\fR(7), \fBlightning-fundchannel\fR(7),
\fBlightning-fundpsbt\fR(7), \fBlightning-utxopsbt\fR(7), \fBlightning-multifundchannel\fR(7)
.SH AUTHOR
@niftynei \fI<niftynei@gmail.com\fR> is mainly responsible\.
.SH RESOURCES
Main web site: \fIhttps://github.com/ElementsProject/lightning\fR
\" SHA256STAMP:a5532a84325f6807aa370bd34a12828dba2fd87bd348bdeaac4217518882d90c