btcpayserver: LNURL does not work with c-lightning v0.11.0

When attempting to pay a LNURL invoice using Phoenix, BTCPay displays a QR code, Phoenix will scan it and show the amount, but attempting pay fails.

In the server log I see the following 400 error:

BTC/lnurl/pay/i/Jk5Sfw1M...?amount=29000

When I check the URL in a browser:

{"status":"ERROR","reason":"Lightning node could not generate invoice with description hash"}

I don’t (fully) understand how LNURL works, but I suspect that you need to use the new deschashonly option for c-lighting (added in https://github.com/btcpayserver/btcpayserver/pull/3559).

See also https://github.com/btcpayserver/btcpayserver/pull/3559#issuecomment-1118829186

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 25 (9 by maintainers)

Most upvoted comments

@pavlenex glad you were able to reproduce! Yes, I did have that 3rd option selected. I initially found out while trying a lightning address, but it also happens when I manually create a LNURL invoice.

I did not dare to downgrade my production c-lightning node. I’m reckless, but there’s limits 😃

The problem was that my manual code for detecting the chain for each invoice was missing signet and was treating it as mainnet (default case).

Solved by skipping the LND *chaincfg.Params premade stuff and just passing the code manually.

Managed to replicate after an update. This is def a bug it seems cc @Kukks