getumbrel / umbrel-apps

The official app repository of the Umbrel App Store. Submit apps and updates here. Learn how → https://github.com/getumbrel/umbrel-apps#readme
https://apps.umbrel.com
529 stars 398 forks source link

Self payment not allowed on LNBit with Umbrel #332

Open 0xtlt opened 1 year ago

0xtlt commented 1 year ago

I am using Umbrel to manage my Lightning Network wallet on LNBit. When I try to make a "self payment" (sending money from one of my own wallets to another), both Umbrel and LNBit refuse the transaction and give me an error message saying that self payments are not allowed.

Is this a known issue or a limitation of the LNBit platform? Is there a way to bypass it or to make self payments using Umbrel on LNBit? Any help or advice would be appreciated.

I want to have 2 wallets, one for me and one for my friend on the same umbrel and be able to send founds from one to another.

mayankchhabra commented 1 year ago

Thank you for reporting, @0xtlt. @jimsb would you be able to reproduce this and share your outcome? Based on that we can contact LNbits and figure it out.

jimbrend commented 1 year ago

I was not able to recreate this issue. If I understood @0xtlt's chain of events correctly, as shown in screens I was able to create two wallets in LNbits and send payment directly between them:

between them between them

However, as per the guide posted here in January, 2021:

"To be able to have free fee, internal txs between your LNDhub LNbits wallets, add this line in your lnd.conf file: allow-circular-route=1"

Sorry, but not sure if this is recurring behavior within the node and requires a patch on our side?

0xtlt commented 1 year ago
CleanShot 2023-01-08 at 11 27 56@2x

Seems to be more an umbrel problem 🤔

jimbrend commented 1 year ago

Edit: This is not the method anymore

You can simply toggle on the setting in the Advanced Settings right from the UI

see my next post

@0xtlt via command line can you SSH in and run this command on your Umbrel: sudo nano umbrel/app-data/lightning/data/lnd/lnd.conf

Then add this line at the bottom of [Application Options]: allow-circular-route=1

Then Control+X > yes to save > enter to continue

Let me know if after making the change it works or if you have any other questions at all

0xtlt commented 1 year ago

Will try this soon, can this be a default setting ? @mayankchhabra / @lukechilds

0xtlt commented 1 year ago

Sorry for the late response, then it's not working :(

0xtlt commented 1 year ago

My configuration looks like:

[Application Options]
maxpendingchannels=3
minchansize=10000
accept-keysend=true
allow-circular-route=1

[Bitcoin]
bitcoin.defaultchanconfs=2
0xtlt commented 1 year ago

Maybe a config missed by umbrel?

https://github.com/lightningnetwork/lnd/blob/master/rpcserver.go#LL4875C16-L4875C33

jimbrend commented 1 year ago

I believe the issue stems from the fact "You can’t send from one lightning wallet to another that uses the same backend liquidity," would you mind to describe your setup in detail again and the scenario on what you're trying to do and how you're creating the wallets for you and your friend? I think this will be a limitation if trying to send directly from one to another using the same liquidity as this would be an exploit technically of LN if it was possible...

0xtlt commented 1 year ago

BUT If I use for example my Zeus lightning node client (which has the credentials of my node) I can pay the invoice and the funds "arrive" well on my blue wallet.

So I think it's just a parameter, in this case the "allow self payment" that is missing somewhere in the umbel code

jimbrend commented 1 year ago

We have the toggle for Circular Payment Routes in Lightning Node App's Advanced Settings now

image

Some users are still getting payment route not found error or internal server error, leaving issue open to help identify all the causes and solutions for any related errors...

  1. One cause can be there is not enough Max Send and Receive liquidity - you can easily track in your Lightning Node summary equivalent to your inbound and outbound liquidity

  2. Another is you don't have this setting toggled on or may have changed your umbrel-lnd.conf manually (this file should not be edited see our FAQ under "Locating the lnd.conf File"

  3. I believe there can be other causes of this error, possibly requiring restarting lightning - or too few channels open...

ElucGeek commented 1 year ago

I have the same issue, it used to work fine, I could pay an invoice generated by BTCPay server with LNbits or pay with the node Lightning interface directly an LNbits invoice, but now it's not working anymore. In LNbits I got this self payement not allowed" error, in other situation it just fails with a more or less cryptic error. What happened to Umbrel? I change this circular payment routes to "ON" as it was not, I never touch these settings before, thus I made some small changes in the config before these advance settings were available but all seams good in the file too.

Any help is welcome as I have many scenarios where I need self payments.

jimbrend commented 1 year ago

Hey @ElucGeek has a restart also not yet helped? A reboot of the whole system should also restart lightning and LNbits, System > Restart

If you have telegram please reach out to me https://t.me/usernameisJim and I can dig further into why this is occurring still

ElucGeek commented 1 year ago

I did update a bunch of apps which restart them in the prosess obviously, but didn't fuully restart Umbrel. I did it now, which is always a stressfull experience with all apps taking ages to start, seriously took me 45min with app stuck at starting and GUI bugging.

Now it looks like it works, but when I pay the invoice LNbits give me a 500 internal error and I need to refresh the page to see that the sats are gone and in Umbrel Lightning app or Zeus the invoice is never marked as paid and total on the node is still the same but this is normal.

jjmmbb commented 4 weeks ago

Have you solve this issue? Some happening here.

ElucGeek commented 3 weeks ago

Have you solve this issue? Some happening here.

I solved it by installing a new node in CLI on a new machine with a new LNbits instance that I can update to the latest version as fast as it's released. It works way better and it's super fast compared to Umbrel.

jjmmbb commented 3 weeks ago

Have you solve this issue? Some happening here.

I solved it by installing a new node in CLI on a new machine with a new LNbits instance that I can update to the latest version as fast as it's released. It works way better and it's super fast compared to Umbrel.

So are you using standalone apps?