[Grant DRAFT] Integrated lightning wallet plugin

Author: NicolasDorierCreated Feb 3, 2026Updated Sep 14, 2026

BTCPay Server already include an interface to easily send money from your own Bitcoin Wallet on chain. However, for lightning, we are relying on third party project such as RTL (Ride the Lightning).

RTL only supports LND and Core Lightning and is minimally maintained. As a result, users running other Lightning implementations — or seeking simpler workflows — are increasingly pushed toward custodial services such as Blink.

BTCPay Server now supports Phoenixd as a backend in its Docker deployment. Because RTL does not support Phoenixd, ACINQ developed a plugin to enable basic sending functionality directly from the node (@armelinw). While functional, this approach remains fragmented and limited.

BTCPay Server already includes an abstraction layer over multiple Lightning implementations. Building a minimal native wallet management interface on top of this layer would provide a consistent, non-custodial user experience across backends.

While Lightning payouts can technically be performed using the existing payout system, this workflow is unintuitive and unsuitable for routine wallet management.

It has therefore been decided that this functionality should be developed as an external plugin rather than included in BTCPay Server Core.

Project goal

Develop a Lightning wallet management plugin that allows users to:

  • Send Lightning payments using the store’s configured Lightning backend
  • Connect to Lightning peers
  • Open and manage channels

The features should be limit to what is exposed by our abstraction.

Supported implementations

The plugin should function across a broad range of Lightning backends, including:

  • LND
  • Core Lightning (CLN)
  • Phoenixd
  • Blink

Not all Lightning implementations support every operation. The plugin must detect backend capabilities and degrade gracefully when features are unavailable.

The plugin itself should not contains backend specific code. BTCPay Server Core may need to be adapted in order to achieve the goals of this plugin.

Outside of scope

  • Transaction history and accounting interface

Source: btcpayserver/btcpayserver