core-lightning/doc/lightning-withdraw.7.md
Rusty Russell 391da2f440 lightningd: don't let them fundpsbt below emergency reserve.
This is the simple version which always tries to keep some sats if we
have an anchor channel.  Turns out that we need something more
sophisticated for multifundchannel, so that's next.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Changed: JSON-RPC: `withdraw` will refuse to spend funds below `min-emergency-msat` if we have any anchor channels (and `all` will be reduced appropriately).
Changelog-Changed: JSON-RPC: `fundpsbt` and `utxopsbt` will refuse to spend funds below `min-emergency-msat` if we have any anchor channels.
2023-06-29 11:28:47 -04:00

2.3 KiB

lightning-withdraw -- Command for withdrawing funds from the internal wallet

SYNOPSIS

withdraw destination satoshi [feerate] [minconf] [utxos]

DESCRIPTION

The withdraw RPC command sends funds from Core Lightning's internal wallet to the address specified in destination.

The address can be of any Bitcoin accepted type, including bech32.

satoshi is the amount to be withdrawn from the internal wallet (expressed, as name suggests, in satoshi). The string all can be used to specify withdrawal of all available funds (but if we have any anchor channels, this will always leave at least min-emergency-msat as change). . Otherwise, it is in satoshi precision; 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 is an optional feerate: see NOTES in lightning-feerates(7) for possible values. The default is normal.

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

utxos specifies the utxos to be used to be withdrawn from, as an array of "txid:vout". These must be drawn from the node's available UTXO set.

RETURN VALUE

On success, an object is returned, containing:

  • tx (hex): the fully signed bitcoin transaction
  • txid (txid): the transaction id of tx
  • psbt (string): the PSBT representing the unsigned transaction

On failure, an error is reported and the withdrawal transaction is not created.

The following error codes may occur:

  • -1: Catchall nonspecific error.
  • 301: There are not enough funds in the internal wallet (including fees) to create the transaction.
  • 302: The dust limit is not met.
  • 313: The min-emergency-msat reserve not be preserved (and we have anchor channels).

AUTHOR

Felix <fixone@gmail.com> is mainly responsible.

SEE ALSO

lightning-listfunds(7), lightning-fundchannel(7), lightning-newaddr(7), lightning-txprepare(7), lightning-feerates(7).

RESOURCES

Main web site: https://github.com/ElementsProject/lightning