lnbits/docs/guide/wallets.md
calle 4fc0a25d41
Mega-merge 4: Reenable LndWallet gRPC and use TrackPaymentV2 (#745)
* readd lndgrpc

* debug logging

* Use TrackPaymentV2

* /v2/router/track

* lnd_router_grpc

* flag for blocking check

* error handling

* fix name

* regtest lndgrpc

* new test pipeline

* fix env

* check for description hash

* remove unnecessary asserts for clarity

* assume that description_hash is a hash already

* no lock

* description hashing in backend

* restore bolt11.py

* /api/v1/payments with hex of description

* comment

* refactor wallets

* forgot eclair

* fix lnpay

* bytes directly

* make format

* mypy check

* make format

* remove old code

* WIP status check

* LND GRPC docs

* restore cln to main

* fix regtest

* import

* remove unused import

* format

* do not expect ok

* check ok

* delete comments
2022-08-09 11:49:39 +02:00

2.6 KiB

layout title nav_order
default Backend wallets 3

Backend wallets

LNbits can run on top of many lightning-network funding sources. Currently there is support for CoreLightning, LND, LNbits, LNPay, lntxbot and OpenNode, with more being added regularly.

A backend wallet can be configured using the following LNbits environment variables:

CoreLightning

Using this wallet requires the installation of the pylightning Python package.

  • LNBITS_BACKEND_WALLET_CLASS: CoreLightningWallet
  • CORELIGHTNING_RPC: /file/path/lightning-rpc

Spark (c-lightning)

LND (REST)

  • LNBITS_BACKEND_WALLET_CLASS: LndRestWallet
  • LND_REST_ENDPOINT: http://10.147.17.230:8080/
  • LND_REST_CERT: /file/path/tls.cert
  • LND_REST_MACAROON: /file/path/admin.macaroon or Bech64/Hex

or

  • LND_REST_MACAROON_ENCRYPTED: eNcRyPtEdMaCaRoOn

LND (gRPC)

Using this wallet requires the installation of the grpcio and protobuf Python packages.

  • LNBITS_BACKEND_WALLET_CLASS: LndWallet
  • LND_GRPC_ENDPOINT: ip_address
  • LND_GRPC_PORT: port
  • LND_GRPC_CERT: /file/path/tls.cert
  • LND_GRPC_MACAROON: /file/path/admin.macaroon or Bech64/Hex

You can also use an AES-encrypted macaroon (more info) instead by using

  • LND_GRPC_MACAROON_ENCRYPTED: eNcRyPtEdMaCaRoOn

To encrypt your macaroon, run ./venv/bin/python lnbits/wallets/macaroon/macaroon.py.

LNbits

  • LNBITS_BACKEND_WALLET_CLASS: LNbitsWallet
  • LNBITS_ENDPOINT: e.g. https://lnbits.com
  • LNBITS_KEY: lnbitsAdminKey

LNPay

For the invoice listener to work you have a publicly accessible URL in your LNbits and must set up LNPay webhooks pointing to <your LNbits host>/wallet/webhook with the "Wallet Receive" event and no secret. For example, https://mylnbits/wallet/webhook will be the Endpoint Url that gets notified about the payment.

  • LNBITS_BACKEND_WALLET_CLASS: LNPayWallet
  • LNPAY_API_ENDPOINT: https://api.lnpay.co/v1/
  • LNPAY_API_KEY: sak_apiKey
  • LNPAY_WALLET_KEY: waka_apiKey

lntxbot

  • LNBITS_BACKEND_WALLET_CLASS: LntxbotWallet
  • LNTXBOT_API_ENDPOINT: https://lntxbot.com/
  • LNTXBOT_KEY: lntxbotAdminApiKey

OpenNode

For the invoice to work you must have a publicly accessible URL in your LNbits. No manual webhook setting is necessary.

  • LNBITS_BACKEND_WALLET_CLASS: OpenNodeWallet
  • OPENNODE_API_ENDPOINT: https://api.opennode.com/
  • OPENNODE_KEY: opennodeAdminApiKey