Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
LIGHTNING-FUNDPSBT(7)	      lightning-fundpsbt	 LIGHTNING-FUNDPSBT(7)

       lightning-fundpsbt - Command to populate	PSBT inputs from the wallet

       fundpsbt	 satoshi  feerate  startweight	[minconf] [reserve] [locktime]
       [min_witness_weight] [excess_as_change]

       fundpsbt	is a low-level RPC command which creates a  PSBT  using	 unre-
       served inputs in	the wallet, optionally reserving them as well.

       satoshi	is  the	 minimum satoshi value of the output(s)	needed (or the
       string "all" meaning use	all unreserved inputs).	 If a value, it	can be
       a  whole	number,	a whole	number ending in sat, a	whole number ending in
       000msat,	or a number with 1 to 8	decimal	places ending in btc.

       feerate can be one of the feerates listed in lightning-feerates(7),  or
       one  of	the strings urgent (aim	for next block), normal	(next 4	blocks
       or so) or slow (next 100	blocks or so) to use lightningdas internal es-
       timates.	  It  can also be a feerate is a number, with an optional suf-
       fix: perkw means	the  number  is	 interpreted  as  satoshi-per-kilosipa
       (weight),  and perkb means it is	interpreted bitcoind-style as satoshi-
       per-kilobyte. Omitting the suffix is equivalent to perkb.

       startweight is the weight of the	transaction before fundpsbt has	 added
       any inputs.

       minconf specifies the minimum number of confirmations that used outputs
       should have. Default is 1.

       reserve is a boolean: if	true  (the  default),  then  reserveinputs  is
       called (successfully, with exclusive true) on the returned PSBT.

       locktime	 is  an	 optional  locktime: if	not set, it is set to a	recent
       block height.

       min_witness_weight is an	optional minimum weight	to use	for  a	UTXO's
       witness.	If the actual witness weight is	greater	than the provided min-
       imum, the actual	witness	weight will be used.

       excess_as_change	is an optional boolean to flag to add a	change	output
       for the excess sats.

       Let's assume the	caller is trying to produce a 100,000 satoshi output.

       First,  the  caller estimates the weight	of the core (typically 42) and
       known outputs of	the transaction	(typically (9 +	scriptlen) * 4).   For
       a simple	P2WPKH it's a 22 byte scriptpubkey, so that's 124 weight.

       It calls	"fundpsbt 100000sat slow 166", which succeeds, and returns the
       psbt and	feerate_per_kw it used,	the estimated_final_weight and any ex-

       If  excess_msat is greater than the cost	of adding a change output, the
       caller adds a change output randomly to position	0 or 1	in  the	 PSBT.
       Say  feerate_per_kw  is	253, and the change output is a	P2WPKH (weight
       124), the cost is around	31 sats.  With the dust	limit disallowing pay-
       ments  below  546 satoshis, we would only create	a change output	if ex-
       cess_msat was greater or	equal to 31 + 546.

       On success, returns the	psbt  containing  the  inputs,	feerate_per_kw
       showing	the  exact numeric feerate it used, estimated_final_weight for
       the estimated weight of the transaction	once  fully  signed,  and  ex-
       cess_msat containing the	amount above satoshi which is available.  This
       could be	zero, or dust.	If satoshi was "all", then excess_msat is  the
       entire  amount  once  fees are subtracted for the weights of the	inputs
       and startweight.

       If reserve was true, then a reservations	 array	is  returned,  exactly
       like reserveinputs.

       If  excess_as_change is true and	the excess is enough to	cover an addi-
       tional output above the dust_limit, then	an output is added to the PSBT
       for  the	 excess	 amount. The excess_msat will be zero. A change_outnum
       will be returned	with the index of the change output.

       On error	the returned object will contain code and message  properties,
       with code being one of the following:

	      o	     -32602: If	the given parameters are wrong.

	      o	     -1: Catchall nonspecific error.

	      o	     301: Insufficient UTXOs to	meet satoshi value.

       Rusty Russell> is	mainly responsible.

       lightning-utxopsbt(7),	 lightning-reserveinputs(7),   lightning-unre-

       Main web	site:



Want to link to this manual page? Use this URL:

home | help