breez_sdk_liquid

Function validate_lnurl_withdraw

pub async fn validate_lnurl_withdraw(
    req_data: LnUrlWithdrawRequestData,
    invoice: LNInvoice,
) -> Result<LnUrlWithdrawResult, LnUrlError>
Expand description

Validates invoice and performs the second and last step of LNURL-withdraw, as per https://github.com/lnurl/luds/blob/luds/03.md

See the parse docs for more detail on the full workflow.

Note that the invoice amount has to respect two separate min/max limits:

  • those in the LnUrlWithdrawRequestData showing the limits of the LNURL endpoint, and
  • those of the current node, depending on the LSP settings and LN channel conditions