Lightning-native tips for Bitcoin creators <—> USDT , Nostr amplification.
Rumble surfaces on-chain Bitcoin addresses for support. For micro-tips, paying on-chain is often impractical (fees and UX swamp small amounts). TipSats is built for sub-dollar, instant flows: Lightning in, stablecoin out to creators, plus Nostr to boost creator economy
- Spark wallet — Lightning integration:
createInvoice,payInvoice, and the path into swaps.- Spark (WDK) —
tipsats-backend/src/lib/spark.ts· harness quote/pay —test-harness-twdk-spark-ln/lightning.ts
- Spark (WDK) —
- LN ↔ USDT — Boltz-style atomic swap; recent ecosystem momentum around Lightning and stablecoin rails (Boltz on X, Mar 18).
- Boltz harness —
test-harness-twdk-spark-ln/boltz.ts
- Boltz harness —
- TWDK + ERC-4337 — batch USDT transfers from the agent wallet to multiple creator addresses in one user-operation flow (Polygon).
- ERC-4337 + batch API —
tipsats-backend/src/lib/evm4337.ts·tipsats-backend/src/routes/agent.ts
- ERC-4337 + batch API —
- Extends TWDK Nostr — publish after payout to boost visibility and engagement around the tipped channels.
- Publish + NWC bridge —
tipsats-backend/src/lib/nostr-publish.ts·tipsats-backend/src/lib/nwc-config.ts
- Publish + NWC bridge —
- Pipeline (pay bolt11 → wait for USDT → ERC-4337 batch → Nostr) —
tipsats-backend/src/lib/pipeline.ts - Dependencies (
@tetherto/wdk-wallet-spark,@tetherto/wdk-wallet-evm-erc-4337,nostr-tools, …) —tipsats-backend/package.json
- wdk-wallet-nostr — Tether WDK Nostr wallet module (ecosystem alignment).
sequenceDiagram
autonumber
actor User as Creator / operator
participant MC as Mission Control
participant API as Agent (TWDK)
participant Spark as Spark (Lightning)
participant Boltz as Boltz (LN to USDT)
participant Agent as Agent (ERC-4337)
participant Poly as Polygon (USDT)
participant Relays as Nostr relays
User->>MC: Fund session, run pipeline
MC->>API: Tip session + execute
API->>Spark: Pay Lightning invoice (bolt11)
Spark-->>Boltz: LN settlement
Boltz-->>Agent: USDT on agent
API->>Agent: Batch payout (4337)
Agent->>Poly: USDT to creators
API->>Relays: Kind 1 note (share URL)
flowchart LR
subgraph ingest [Lightning]
A[Invoice] --> B[Spark payInvoice]
end
subgraph bridge [Swap]
B --> C[Boltz LN to USDT]
end
subgraph settle [On-chain]
C --> D[Agent custody]
D --> E[ERC-4337 batch]
E --> F[Creators Polygon USDT]
end
subgraph social [Social]
D --> G[Nostr kind 1]
end
-
TWDK Spark invoice settlement — Lightning payment settles in Spark when the pipeline pays the Boltz-issued bolt11 (
payInvoiceflow).
-
TWDK ERC-4337 batch distribution to creators — Polygon transaction (Blockscout)
-
Nostr event — Notes on Nostur Client
Lightning + USDT + Nostr — TipSats.