* 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
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
: CoreLightningWalletCORELIGHTNING_RPC
: /file/path/lightning-rpc
Spark (c-lightning)
LNBITS_BACKEND_WALLET_CLASS
: SparkWalletSPARK_URL
: http://10.147.17.230:9737/rpcSPARK_TOKEN
: secret_access_key
LND (REST)
LNBITS_BACKEND_WALLET_CLASS
: LndRestWalletLND_REST_ENDPOINT
: http://10.147.17.230:8080/LND_REST_CERT
: /file/path/tls.certLND_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
: LndWalletLND_GRPC_ENDPOINT
: ip_addressLND_GRPC_PORT
: portLND_GRPC_CERT
: /file/path/tls.certLND_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
: LNbitsWalletLNBITS_ENDPOINT
: e.g. https://lnbits.comLNBITS_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
: LNPayWalletLNPAY_API_ENDPOINT
: https://api.lnpay.co/v1/LNPAY_API_KEY
: sak_apiKeyLNPAY_WALLET_KEY
: waka_apiKey
lntxbot
LNBITS_BACKEND_WALLET_CLASS
: LntxbotWalletLNTXBOT_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
: OpenNodeWalletOPENNODE_API_ENDPOINT
: https://api.opennode.com/OPENNODE_KEY
: opennodeAdminApiKey