* 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
| 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