Case studiesPaid video sessions

Satstreamr: video sessions with metered ecash payments

Satstreamr connected a one-to-one video session to small, repeated payments while the call ran. Nelson P. built the browser application, wallet and metering flow, with a separate service for video signaling.

Business
Satstreamr
Sector
Paid video sessions
Scope
Video, wallet and payment metering
Contributor
Nelson P.
Editorial illustration: an optical lens beside a metering channel and orange token
AI-generated editorial illustration of the project’s domain.

The payment needed to follow the session as it happened.

A paid remote session creates a timing problem: the host provides time while the viewer pays for it. Charging everything before or after the call separates payment from the actual session.

The project explored metering small payments during a call. That required the application to coordinate video state, wallet balance and payment confirmation, including what happens when one of those stops.

Coordinate the video connection, balance and metering state.

WebRTC connected the browsers for video, supported by a small signaling service. An in-browser Cashu ecash wallet held the viewer’s balance, with Lightning used for loading and cashing out.

The metering engine coordinated repeated payments and confirmation. It paused when progress stalled and ended the call when the balance was exhausted. The wallet and metering code were made public alongside the signaling service.

What the workflow includes

  • Connect a one-to-one call using WebRTC.
  • Manage the viewer’s ecash balance in the browser.
  • Coordinate repeated payments with session state.
  • Pause stalled metering and handle an exhausted balance.

Project details

Satstreamr · a token-flow diagram showing the viewer, streamer and Cashu mint, with ecash for per-second payments and Lightning to deposit and withdraw

Project materials showing the workflows and interfaces described in this case.

Product walkthrough

Video, wallet and payment metering. The delivery section explains the workflow demonstrated here.

The call and its payment flow formed one inspectable system.

The project delivered the complete session loop: connect, load a balance, meter payment and stop. Publishing the code exposed the implementation of both the video and payment coordination.

What this means for the technology owner.

Payment metering needs an explicit state model and recovery behavior. A handover should document the wallet, the Cashu mint dependency, signaling and the handling of interrupted calls. An in-browser wallet changes where balances are held, but does not remove the need to understand the underlying payment providers.

The technology ownership checklist →

TypeScriptWebRTCCashu ecashLightningPythonWebSockets

Project contribution: Nelson P.. The scope described above identifies the work behind this case.

Satstreamr — project link

Editorial review: Ego Eimi · Updated September 6, 2026 · About the team

Your technology

Start with the business

Your business depends on it.

Tell us which system matters, what has changed and who controls it. We will define a reviewable next step. Read Foundation and the commitments and evidence.