OpenFluid
Money that streams by the second, privately, on Canton.
Canton Sub-Second
- Pioneered streaming cash-flow primitives on the Daml / Canton Network stack
- Full privacy preservation across participant nodes with zero data leakage to uninvited parties
- Sub-second mathematical settlement balance interpolation
# What it is
OpenFluid brings real-time, sub-second continuous token streaming to the Canton Network. Built with Daml smart contracts, it enables granular, continuous cash flows for payroll, subscription billing, and automated vesting without creating unbounded on-chain state bloat or sacrificing institutional privacy.
# Why it exists
Lump-sum periodic settlements create counterparty risk and capital inefficiency. Existing public-chain streaming solutions expose enterprise payroll and transaction graphs to public surveillance.
# How it works
A StreamToken contract wraps CIP-56 assets to make them streamable. Above it sit three primitives: StreamAgreement (1-to-1 flows, extended by oracle-gated ConditionalStream and escrowed StreamVault variants) and DistributionPool (1-to-many pooled streaming), plus a Compliance plug-in for regulatory hooks. A TypeScript SDK generated via daml codegen ts and a Node/Express read layer sit over the Canton JSON API; Canton subgraph privacy keeps flow amounts and parties invisible to non-signatories.
# Decisions worth explaining
- 01
Lazy settlement over per-second ledger writes
Writing every second would explode ledger state and fees; balances are interpolated mathematically and materialized only on explicit Settle.
- 02
4-hour deposit buffer requirement
Matches the buffer sizing Superfluid converged on in production — bounds liquidation risk while keeping capital efficiency acceptable.
- 03
Oracle as a Canton contract instead of external HTTP
External calls would break Canton's sub-transaction privacy guarantee; an on-ledger oracle keeps ConditionalStreams inside the privacy boundary.
- 04
NET flowRate consolidation on StreamToken
All streams collapse into one token per asset per party — O(1) balance reads instead of summing N agreements.
# Details
- Daml-based sub-transaction privacy ensuring cash flows are visible only to authorized stakeholders
- Sub-second continuous balance interpolation without per-second transaction fees
- Automated vesting curves with clawback and pause mechanics for institutional compliance
- Interoperable settlement across Canton Network multi-party participant nodes
# Built with
Daml · Canton Network · Java / TypeScript SDK · Institutional Privacy · Payment Streaming
The essay behind OpenFluid →