BOLT 2 is the operational core of the Lightning Network, specifying the exact sequence of messages two nodes exchange to create a 2-of-2 multisignature channel, update its balance state through commitment transactions, and eventually close it cooperatively. It covers the open_channel, accept_channel, funding_created, and funding_signed handshake, the commitment_signed and revoke_and_ack update loop, and the shutdown and closing_signed cooperative close flow. Every Lightning implementation—LND, Core Lightning (CLN), Eclair, and LDK—must conform to this standard to interoperate at the channel level.

BOLT 2: Channel Establishment and Management
Introduction
BOLT 2 defines the peer-to-peer protocol for establishing, managing, and cooperatively closing a Lightning Network payment channel.
The standard is undergoing its most significant evolution since inception with the integration of dual-funding v2 and interactive transaction building (ITB). These upgrades replace the original single-funder model where only the opener contributed to the channel's bitcoin UTXO. With dual-funding, both parties can contribute inputs, enabling privacy-enhancing coinjoin-style channel opens, sidecar channels for onboarding new users without on-chain funds, and improved capital efficiency for Liquidity Service Providers (LSPs). The interactive construction of the funding transaction requires multiple rounds of tx_add_input, tx_add_output, and tx_complete messages, fundamentally altering the channel-opening state machine.
For wallet developers, exchange integration teams, and LSP operators, tracking BOLT 2 changes is critical because the channel-opening flow directly impacts user experience, on-chain fee management, and liquidity provisioning strategies. A mismatch between a mobile wallet expecting dual-funding and an LSP that only supports the legacy single-funder flow will result in a failed channel open. Chainscore Labs can provide upgrade readiness reviews, implementation audits for the new interactive transaction building state machine, and integration testing to ensure compatibility across the fragmented implementation landscape.
Quick Facts
Core operational facts about the BOLT 2 specification for channel establishment, funding, and cooperative closure.
| Field | Value | Why it matters |
|---|---|---|
Specification Status | Merged BOLT with active extensions (dual-funding, splicing) | Determines baseline interoperability for all Lightning node implementations |
Channel Establishment | Peer-initiated | Affects wallet UX, UTXO management, and capital efficiency for node operators and LSPs |
Funding Model | Single-funder (legacy) and dual-funding v2 with interactive transaction building | Dual-funding enables coinjoin-style privacy, sidecar channels, and shared channel liquidity |
Commitment Transactions | Defines initial commitment transaction structure and revocation basepoints | Security-critical for custody providers and hardware wallet integrators handling key derivation |
Cooperative Close | Mutual agreement to close channel with | Affects on-chain fee negotiation, settlement finality, and exchange withdrawal workflows |
Message Flow | 26+ message types covering open, funding, close, and error handling | Implementers must handle all message states for reliable channel lifecycle management |
Compatibility | Requires BOLT 1 (transport), BOLT 3 (commitment format), BOLT 8 (encryption) | Full-stack dependency chain; partial implementation risks channel failure or fund loss |
Active Extensions | Dual-funding v2, splicing, and Taproot channel integration in various stages | Operators should verify implementation support before deploying new channel types |
Technical Mechanism: From Single-Funder to Dual-Funding
How BOLT 2 evolved from a single-funder model to interactive dual-funding, enabling shared channel inputs, improved privacy, and new liquidity-service patterns.
The original Lightning Network channel-opening flow defined in BOLT 2 was a single-funder model: one party (funder) created and signed the funding transaction alone, committing their own UTXOs before sending the incomplete commitment signatures to the fundee. This created an asymmetric trust dynamic where the funder bore all on-chain costs and the fundee had no capital at risk until the channel was confirmed. The funding_created and funding_signed messages encoded this unilateral construction, which was simple but limited—it prevented both parties from contributing inputs, blocked coinjoin-style channel opens, and forced liquidity providers to pre-commit capital without the ability to batch or share UTXO ownership.
Dual-funding replaces this with an interactive transaction-building protocol. Both parties exchange tx_add_input, tx_add_output, and tx_complete messages to collaboratively construct the funding transaction. This allows each peer to contribute inputs and outputs, enabling shared channel funding, batched channel opens, and the creation of sidecar channels where a third party pays fees. The mechanism introduces a new channel_reestablish handshake to resume interrupted funding sessions and relies on commitment_signed exchanges that commit to the jointly built transaction. The security model shifts: both parties must now validate counterparty inputs against double-spends and fee-sniping, and the protocol must handle interactive fee negotiation under dynamic mempool conditions.
For wallet developers, LSPs, and exchange integration teams, dual-funding changes the operational calculus. LSPs can now offer just-in-time inbound liquidity without fully prefunding channels, while mobile wallets can open private channels with coinjoin-like input mixing. However, the interactive flow introduces new edge cases around funding timeouts, fee bumping, and UTXO selection that require careful implementation review. Teams adopting dual-funding should audit their commitment-transaction state machine, test interruption-recovery paths, and verify fee-negotiation logic against mempool volatility before deploying to production.
Affected Actors
Core Protocol Engineers
Maintainers of LND, Core Lightning, Eclair, and LDK must implement the state machine for channel establishment, funding, and cooperative close. This includes handling open_channel, accept_channel, funding_created, funding_signed, and shutdown messages with exact compliance.
Key Actions:
- Audit commitment transaction construction against the latest BOLT 2 specification.
- Ensure interactive transaction building (dual-funding v2) is correctly gated behind feature-bit negotiation.
- Validate that funding transaction output scripts match the agreed-upon
funding_pubkeyderivation. - Test cooperative close message flows under edge cases like concurrent
shutdowninitiation.
Chainscore can perform a protocol compliance review of your channel state machine to catch deviations before they cause interop failures.
Implementation Impact Areas
BOLT 2 governs the critical path for channel funding, commitment transactions, and cooperative closure. Changes to this specification directly affect how wallets, LSPs, and exchanges manage capital, sign transactions, and handle failure modes.
Compatibility and Risk Matrix
Evaluates the operational and integration risks introduced by changes to the channel opening, funding, and cooperative close lifecycle defined in BOLT 2.
| Area | What changes | Who is affected | Action |
|---|---|---|---|
Dual-Funding (v2) | Interactive transaction building replaces single-funder model; both peers contribute inputs to the funding transaction. | Wallet developers, LSPs, exchange integration teams | Review interactive-tx protocol flow; update channel-opening state machines and liquidity-provisioning logic. |
Upfront Shutdown Script | Requires a final payout address to be exchanged during channel opening, preventing future negotiation. | Custodians, non-custodial wallet developers | Verify that shutdown script handling is enforced in the opening flow and that key derivation supports long-term address stability. |
Channel Type Negotiation | Explicit channel type TLV enforces feature negotiation at open, preventing mismatch on commitment formats. | Node implementers, protocol library maintainers | Audit feature-bit negotiation logic to ensure nodes reject incompatible channel types rather than silently accepting them. |
Option | New commitment format with zero-fee HTLC transactions requires anchor outputs for CPFP fee bumping. | LSPs, routing node operators, watchtower services | Assess fee-bumping wallet logic; ensure watchtowers can resolve zero-fee HTLC transactions under high-fee environments. |
Cooperative Close Protocol | Shutdown message exchange and fee negotiation can stall if peers disagree on closing fee rates. | Exchange withdrawal systems, mobile wallet developers | Implement a bounded fee-negotiation loop with a timeout to prevent indefinite channel close delays. |
Funding Transaction RBF | Replace-by-fee during funding allows bumping but introduces edge cases if the funding tx is double-spent. | LSPs, on-chain fee management services | Monitor mempool for funding transaction conflicts; implement safe RBF policies to avoid accidental double-spends. |
Error Handling During Opening | Ambiguous or missing error codes can leave peers in a half-open state, locking funds temporarily. | Node operators, integration test engineers | Test all failure paths during channel open; ensure nodes safely forget the channel when receiving a definitive error. |
Operator and Integrator Readiness Checklist
A practical checklist for node operators, wallet developers, and exchange teams to verify their implementation's compliance with the current BOLT 2 specification for channel establishment, funding, and cooperative close. This covers critical state machine transitions, transaction format handling, and upgrade paths for dual-funding.
What to check: Confirm that your implementation correctly serializes and deserializes all fields in the open_channel and accept_channel messages, including chain_hash, funding_satoshis, dust_limit_satoshis, max_htlc_value_in_flight_msat, channel_reserve_satoshis, htlc_minimum_msat, feerate_per_kw, to_self_delay, max_accepted_htlcs, and funding_pubkey.
Why it matters: A mismatch in any parameter negotiation can lead to a failed channel opening or, worse, a channel that opens but cannot process payments or be unilaterally closed correctly. This is the foundational handshake for the channel's economic and security parameters.
Readiness signal: Your node successfully opens a channel with at least two other major implementations (e.g., LND and Core Lightning) on testnet with non-default values for dust_limit and channel_reserve.
Source Resources
Primary resources for reviewing BOLT 2 channel establishment and management, its transaction dependencies, and implementation-specific behavior. Confirm feature support and deployment status against current client documentation and release notes before enabling newer channel workflows.
Looking to build on a specific blockchain?
We build smart contracts, DeFi applications, wallets, tokenization platforms, and blockchain infrastructure across the major ecosystems teams choose today. That includes Ethereum, Arbitrum, Optimism, Polygon, Avalanche, Solana, Sui, Aptos, Hedera, Stellar, and NEAR, with support for additional EVM and non-EVM networks based on your product requirements.
EVM ecosystems
- Ethereum
- Arbitrum
- Optimism
- Polygon
- Avalanche
- Cronos

Non-EVM ecosystems
- Solana
- Sui
- Aptos
- Hedera
- Stellar
- NEAR
Additional ecosystems
- Polkadot
- Cosmos
- TON
- Cardano
- Algorand
- Tempo
Also available for Base, appchains, custom EVM networks, and cross-chain product architecture.
Frequently Asked Questions
Common operational and integration questions about channel establishment, funding, and cooperative close procedures.
Dual funding (v2) changes the channel opening flow from a single-funder model to an interactive transaction building (ITB) process. Key risks include:
- Peer compatibility: Nodes that do not signal the
option_dual_fundfeature bit will fall back to the legacy single-funder flow. Wallets must handle negotiation failure gracefully. - RBF and fee bumping: Both parties can contribute inputs, so fee management becomes collaborative. Implementations must agree on fee rates and handle replacement transactions correctly to avoid funding stalls.
- Transaction construction: The
tx_signaturesmessage replaces the oldfunding_signedflow. Incorrect handling can lead to funding transactions that never confirm. - LSP integration: Liquidity Service Providers relying on just-in-time channel opens must update their APIs (e.g., LSPS1) to support the interactive funding model.
Teams should test against multiple implementations (LND, CLN, Eclair) on testnet before production rollout.
Delivering blockchain solutions for 5+ years.
We have partnered with 50+ leading DeFi protocols, NFT ecosystems, and fintech innovators to build secure, scalable, and capital-efficient blockchain products.
Selected Partners & Clients
“I've been working with Chainscore Labs for last 3+ years, they've consistently delivered with strong ownership across multiple projects. The team is reliable and detail-oriented.”
How to get started?
If you're looking for blockchain integration, ChainScore Labs has 5+ years of experience helping teams build and integrate exchanges, wallets, smart contracts, tokenization solutions, and protocol-connected products, we can help you choose the right path, integrate securely, and get to production faster. Our team consists of experienced blockchain developers and architects who can help you with your blockchain integration needs.
Exploration & Strategy
Define your product goals and choose the right blockchain architecture for your use case.
Architecture & Design
Design the smart contracts, tokenomics, and security parameters of your system.
Development & Integration
Build and integrate with wallets, oracles, and front-end dApps for a seamless experience.
Security & Launch
Comprehensive audits followed by a risk-managed mainnet deployment to protect your users.
Discover our
blockchain development services.
We build production-grade blockchain solutions for top-tier projects across DeFi and Web3.
Need a blockchain engineering team?
Send the project context and we will respond with next steps, scope questions, and a practical path to delivery.


