LIGHTNING-XKEYSEND(7)

πŸ“¦ version 26.06.9, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, welcome to the LIGHTNING-XKEYSEND(7) manual page β€” this is all about xkeysend, the command that sends funds to a node without an invoice. no invoice, no problem, we're going straight to the node ID and making it happen πŸ’Έβœ¨

✨ SYNOPSIS ✨

xkeysend destination amount_msat [label] [maxfee] [layers] [retry_for] [maxdelay] [extratlvs]

πŸ’… DESCRIPTION πŸ’…

okay so xkeysend is a command added in v26.06. The xkeysend RPC command attempts to find a route to the given destination, and send the specified amount to it. Unlike the xpay RPC command, xkeysend does not require an invoice β€” instead it uses the destination node ID, and amount to find a route to the specified node. iconic.

Now for the important part, bestie: in order for the destination to be able to claim the payment, the payment_key is randomly generated by the sender and included in the encrypted payload for the destination. As a consequence there is not proof-of-payment, like there is with an invoice where the payment_key is generated on the destination, and the only way sender could have it is by sending a payment. Please ensure that this matches your use-case when using xkeysend. no cap, this one matters.

This replaces the older keysend command. periodt.

Now the args, one by one, because we do not skip details in this house:

  • destination (pubkey) β€” The 33 byte, hex-encoded, node ID of the node that the payment should go to.
  • amount_msat (msat) β€” A whole number, or a whole number with suffix msat or sat, or a three decimal point number with suffix sat, or an 1 to 11 decimal point number suffixed by btc.
  • label (string, optional) β€” Attach a label to the payment for which is returned in listpays and listsendpays. This is for your own use: it is not visible to the recipient.
  • maxfee (msat, optional) β€” maxfee creates an absolute limit on what fee we will pay.
  • layers (array of strings, optional) β€” These are askrene layers to apply: these can alter the topology or provide additional information on the lightning network. See askrene-create-layer.:
    • (string, optional) β€” name of an existing layer
  • retry_for (u32, optional) β€” Until retry_for seconds passes, the command will keep finding routes and retrying the payment. However, a payment may be delayed for up to maxdelay blocks by another node; clients should be prepared for this worst case. The default is 60 seconds.
  • maxdelay (u32, optional) β€” Number of blocks the payment may be delayed.
  • extratlvs (object, optional) β€” Dictionary of additional fields to insert into the final tlv. The format is 'fieldnumber': 'hexstring'.:

🎁 RETURN VALUE 🎁

On success, an object is returned, containing:

  • payment_preimage (secret) β€” The proof of payment: SHA256 of this payment_hash.
  • failed_parts (u64) β€” How many separate payment parts failed.
  • successful_parts (u64) β€” How many separate payment parts succeeded (or are anticipated to succeed). This will be at least one.
  • amount_msat (msat) β€” Amount the recipient received.
  • amount_sent_msat (msat) β€” Total amount we sent (including fees).

Note that the return is the same as it is for xpay.

πŸ‘‘ AUTHOR πŸ‘‘

Rusty Russell rusty@rustcorp.com.au is mainly responsible. iconic.

πŸ¦‹ SEE ALSO πŸ¦‹

🌈 RESOURCES 🌈

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


That's the whole vibe check! This page is LIGHTNING-XKEYSEND(7) from Core Lightning v26.06.9 β€” the footer didn't hand us a date, just pure keysend energy πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from