L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Déploiement et opérations · SKILL.md

lightning-phoenixd

lightning-phoenixd

Phoenixd by ACINQ: headless server build of Phoenix wallet for self-hosting. Single-node Lightning daemon with batteries-included ACINQ swap-in / swap-out, BOLT12 receive, WebSocket payments API. USE WHEN: deploying a self-hosted minimal Lightning daemon for a service (point-of-sale, donation page, micro-merchant), avoiding full LND/CLN complexity.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: lightning-phoenixd description: | Phoenixd by ACINQ: headless server build of Phoenix wallet for self-hosting. Single-node Lightning daemon with batteries-included ACINQ swap-in / swap-out, BOLT12 receive, WebSocket payments API. USE WHEN: deploying a self-hosted minimal Lightning daemon for a service (point-of-sale, donation page, micro-merchant), avoiding full LND/CLN complexity. allowed-tools: Read, Grep, Glob

phoenixd (ACINQ)

phoenixd is the headless version of the Phoenix wallet. Designed for individuals and small services who want a self-hosted LN daemon without the operational complexity of LND/CLN.

Phoenix mobile = consumer wallet. phoenixd = same engine, no UI, HTTP API for integration.

Architecture

  • Built on top of Eclair core (so JVM-based).
  • Self-hosts; single node, no cluster.
  • Auto-channel management via ACINQ swap-in / swap-out.
  • Default to BOLT12 offers for receiving.
  • Lightning-Address support out of the box.

Why phoenixd

  • No bitcoind required — uses Electrum servers (configurable).
  • No on-chain wallet UI — auto-handles funding and channel mgmt.
  • API-first — HTTP REST + WebSocket for payment events.
  • Reasonable defaults — anchor channels, MPP, BOLT12, all enabled by default.
  • Liquidity from ACINQ — auto channel-open via swap-in.

Install

curl -L https://github.com/ACINQ/phoenixd/releases/download/.../phoenixd-... > phoenixd.zip
unzip phoenixd.zip; cd phoenixd-...

./phoenixd --version
./phoenixd        # first run: generates seed, prompts to backup

Config at ~/.phoenix/phoenix.conf:

chain=mainnet
http-bind-ip=127.0.0.1
http-bind-port=9740
http-password=<auto-generated, in seed.dat or set explicitly>
auto-liquidity=2m   # auto manage liquidity, allow 2M sats inbound

API

Default localhost:9740. Auth via HTTP basic (_:<password>):

curl -u _:$(cat ~/.phoenix/phoenix.conf | grep http-password | cut -d= -f2) \
  http://127.0.0.1:9740/getinfo

curl -u _:pass -X POST -d "amountSat=5000&description=Coffee" \
  http://127.0.0.1:9740/createinvoice

curl -u _:pass -X POST -d "invoice=lnbc..." \
  http://127.0.0.1:9740/payinvoice

WebSocket events

Real-time payment notifications:

const ws = new WebSocket("ws://_:pass@127.0.0.1:9740/websocket");
ws.onmessage = (e) => {
    const event = JSON.parse(e.data);
    if (event.type === "payment-received") {
        console.log("Got", event.amountSat, "sats");
    }
};

Liquidity

phoenixd auto-manages liquidity via ACINQ:

  • Splice-in: when more inbound liquidity needed.
  • Splice-out: when receiving on-chain back.
  • Fees charged by ACINQ (typically small percentage of channel size).

For higher volume, run alongside LSP:

liquidity-provider=acinq    # default

Use cases

  • Self-hosted POS terminals (Donation page, micro-merchant).
  • Private API for backends (no need for LND complexity).
  • Lightning Address servers (low setup overhead).
  • Integration with NWC providers.

Limitations

  • Only one channel at a time (vs LND/CLN which support many).
  • ACINQ as sole LSP (others possible but tested less).
  • No BOLT12 send in some early versions (check current docs).
  • Eclair lineage: heavy JVM, ~500 MB RAM.

Backup

~/.phoenix/seed.dat is the seed (encrypted with empty password unless set). Backup this file + phoenix.conf.

Channel state recovery: if seed restored to a different machine, phoenixd attempts to recover via SCB-like flow with peers.

Comparison

FeaturephoenixdLNDCLNLDK Node
Setup complexity★ (very simple)★★★★★★★★★
Multiple channelsnoyesyesyes
Plugin ecosystemnorichrichcode-level
Memory~500 MB100-200 MB~150 MB10-50 MB
LSP integrationACINQ-nativemanualmanualflexible
BOLT12 receiveyespartialyesyes

See also

Skills enregistrées