LaWalletdocs
OpenSats Grant

Report: Month 6

OpenSats progress report for June 29 - July 10, 2026 — NWC Payment Listener, card activation, deploy targets, and Backup & Restore.

Project: LaWallet NWC
Period: June 29 – July 10, 2026
Grant: OpenSats — Fifteenth Wave of Bitcoin Grants


Summary

This report covers all work completed since the Month 5 report, which closed at the v1.0.10 release on June 29, 2026.

Month 6 built out the settlement transport and self-hosting tier. The headline is the NWC Payment Listener — promoted from an echo stub into a live, long-running service — alongside the end-user card-activation flow, one-click deploy targets (Umbrel / Start9 / Docker Hub), and a full Backup & Restore system. This work shipped across six releases, v1.1.0v1.4.0.

Highlights:

  • NWC Payment Listener (transport-only)apps/listener/ became a live service holding one NWCClient per active NWC RemoteWallet, forwarding NIP-47 notifications to the web app as HMAC-signed webhooks, with relay-pool reconciliation over Postgres LISTEN/NOTIFY (#71), settings-driven config + an NWC Services settings tab (#72), and hybrid missed-event recovery (#73).
  • Listener resilience — a /status endpoint that never 500s + keep-alive guards + dead-LNCurl auto-archival (#80), and never-drop payment webhooks via indefinite backoff retry + backlog logging (#84).
  • Listener dashboard — realtime status, live-count badge, activity sort + pagination (#81), flicker-free realtime feed (#82), and a clickable event detail modal (#86).
  • Card activation flow (SIMPLE + ONE_TIME) — the end-user /wallet/activate/[id] claim UI, mint / rescue endpoints, and a Connect-Card activation-lifecycle E2E (#64).
  • Deploy targets — a Start9 / StartOS package + published .s9pk (#69, #70), listener image publish + hub compose wiring (#75), on top of the multi-arch Docker Hub + Umbrel flow.
  • Backup & Restore — Settings ▸ Backup & Restore: an fflate zip export/import of 14 models with optional AES-256-GCM encryption and analyze / merge / replace import modes, ADMIN-only (#85).
  • Platform polish completing the Month 5 theme — PWA installable wallet with an offline service worker (#62), NIP-05 relays + CORS on .well-known/nostr.json (#63), per-user relay picker (#68), server-side Nostr profile cache (#60).
  • Admin & wallet — admins can grant the ADMIN role (#79), read-only view of any Lightning address (#83), a sat symbol component (#94), primary wallet follows primary address (#95), expanded wallet settings + payment flows (#96), and optional listener-accelerated card payments (#97).
  • Docs — a listener HTTP API reference + webhook contract in the public docs (#78).

Main repository stats (lawallet-nwc): 308 files changed, 28,713 insertions, 3,172 deletions across the v1.0.10v1.4.0 window — 37 merged PRs (#60#97).


Releases

TagDateNotes
v1.1.02026-07-06NWC Payment Listener service goes live (pool + webhooks + dashboard); missed-event recovery; Start9 package; PWA wallet; NIP-05 relays; relay picker; profile cache.
v1.1.12026-07-06Listener migration-ordering fix (wait for web migrations before querying RemoteWallet).
v1.2.02026-07-06Listener dashboard UX; admins can grant ADMIN; /status hardening + dead-LNCurl archival; listener API docs.
v1.2.12026-07-07Never-drop payment webhooks; realtime listener status; read-only address view.
v1.3.02026-07-07Backup & Restore with export/import wizard; listener event detail modal.
v1.4.02026-07-10Expanded wallet settings + payment flows; primary wallet follows primary address; sat symbol component.

Deferred to Month 7

The settlement / share / compliance layer was carried forward into Month 7:

  • MASTER card account-share — FOREVER QRs + the CardClaim / LightningAddressShare / RemoteWalletShare model + share-revoke endpoints (enum values reserved in the schema)
  • NWC Proxy Lite settlement layer + full LUD-16 / LUD-21 / LUD-22 / NIP-57 closeout (webhook transport already ships via the listener)
  • @lawallet-nwc/react hooks package extraction, the WordPress plugin, the Resend email adapter, the Nostr scheduler, threat model + security-audit prep, and Vercel / Netlify deploy configs

See the Month 6 roadmap for the full design of record.

On this page