Reference Implementations
Reference Implementations (RIs) are target architectures for complete Canton applications. Each RI describes the parties, contracts, authority, privacy, and settlement flows of one application, and names the OpenZeppelin packages that it uses.
The four RIs are design documents in
OpenZeppelin/canton-specs.
The designs are still in review, and no RI has published application code
yet. This page will add code walkthroughs when implementations are available.
Privacy-Preserving DEX
An operator-run, non-custodial spot exchange built as a constant-product AMM (x·y = k), with one liquidity pool for each instrument pair. Each trade is an atomic delivery-versus-payment swap: two committed CIP-0112 allocations settle together or not at all, within limits that the trader signs (exact input, minimum output). The ledger enforces the swap math. A multi-hosted venue party holds the authority to execute swaps. Compliance screening and KYC run off-ledger in the venue backend.
The DEX settles through the Token Standard V2 interfaces, so it works with any conforming token registry. It uses Access Control for optional governance.
Design document: Privacy-Preserving DEX
Institutional Lending Protocol
A vault-based lending protocol: fixed-rate, open-term, overcollateralized, and permissioned. Each position is an isolated collateralized debt position that accrues simple interest. Borrowers draw debt tokens from a treasury that a privileged funder supplies. Borrowers and liquidators need a KYC claim from a trusted issuer, and each operation can also require a compliance attestation. An unhealthy vault gets a margin-call grace period, then a partial liquidation in proportion to the payment.
Transfers happen directly inside the vault choices. The protocol uses Access Control, Ownable, and Pausable for authorization, and the Token package for holdings and attestations.
Design document: Institutional Lending Protocol
Cross-Chain Stablecoin Payments
The Canton side of a two-way stablecoin bridge. Inbound, an attested lock on an external chain mints a wrapped instrument on Canton through a messaging gateway. Outbound, a burn on Canton causes a redemption gateway to release the backing asset on the external chain. Each inbound credit settles as a private, all-or-nothing CIP-0112 settlement batch, with a single-use compliance attestation and a KYC credential check.
The hop between chains is not atomic, and privacy applies only on Canton: the lock on the external chain is public. The design uses the Token package for settlement, and Access Control, Ownable, and Pausable for roles, ownership handover, and pause state.
Design document: Cross-Chain Stablecoin Payment Orchestration
Confidential Auction
A sealed-bid, uniform-price auction that distributes a fixed quantity of a fungible token in one round. The issuer's supply and each bidder's maximum payment are locked in advance as committed Token Standard V2 allocations. Bidders do not see each other's bids. The issuer and the auctioneer see all bids, and bidders trust the auctioneer to submit the complete set. One atomic transaction checks the auctioneer's off-ledger result against the published clearing rule, then settles the payment and token delivery of every winner.
The design builds on the Token package. Pause is an optional deployment choice.
Design document: Confidential Auction