Skip to content

Fix standalone BOLT12 offer payments#287

Merged
hsjoberg merged 1 commit into
masterfrom
codex/fix-bolt12-offer-payments
Jul 17, 2026
Merged

Fix standalone BOLT12 offer payments#287
hsjoberg merged 1 commit into
masterfrom
codex/fix-bolt12-offer-payments

Conversation

@niteshbalusu11

Copy link
Copy Markdown
Member

Summary

  • recognize standalone, lightning-prefixed, uppercase, continued, and BIP-321 BOLT12 offers
  • keep Bark as the authoritative TLV and semantic validator before payment
  • update send-screen guidance and add regression coverage using a real LDK offer fixture

Root cause

The send destination gate only recognized BOLT11, Ark, on-chain, and Lightning Address inputs. The existing BIP-321 dependency also validates BOLT12 offers as checksummed Bech32, while real BOLT12 offers use checksum-less Bech32, so valid offers were discarded before reaching the existing native payment path.

User impact

Users can paste or scan valid lno1 offers and proceed through amount entry and confirmation instead of receiving the invalid-destination popup.

Validation

  • just check
  • ESLint
  • 42 unit tests
  • TypeScript typecheck

Recognize checksum-less offers across raw, prefixed, continued, and BIP-321 send destinations with regression coverage.
@hsjoberg
hsjoberg merged commit c38f69a into master Jul 17, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants