Problem
Hyperledger Cacti currently lacks a ledger connector for the Canton Network (Digital Asset's privacy-enabled blockchain platform built on Daml). As enterprise adoption of Canton grows—especially in financial-services use cases such as tokenized assets, digital cash, and synchronized ledgers—interoperability with Canton becomes increasingly relevant.
A Canton connector would enable Cacti users to incorporate Canton Network use cases into existing interoperability workflows without having to build and maintain a separate integration outside of Cacti.
A few desired features:
- Invoke Daml contracts or query ledger state on a Canton node via Cacti's unified API.
- Participate in cross-chain asset transfers involving Canton as a source or destination ledger.
- Monitor Canton ledger events (new transactions, contract creations/archives) through a standard WatchBlocks interface.
Proposed solution
Implement a new package cactus-plugin-ledger-connector-canton following the existing IPluginLedgerConnector contract and patterns established by connectors such as cactus-plugin-ledger-connector-besu .
High-level scope:
- Canton gRPC / HTTP JSON-API client — wrap Canton's Ledger API (gRPC) or HTTP JSON API to submit and query Daml contracts.
- Create Canton AIO (i.e., a lightweight Canton sandbox image for integration tests (similar to existing cactus-test-tooling helpers)
IPluginLedgerConnector implementation — expose transact, runTransaction, getConsensusAlgorithmFamily, and related standard methods.
WatchBlocksV1 endpoint — stream Canton ledger events (transaction trees / flat transactions) as Cacti block events.
- Unit and integration tests — Jest test suite covering happy-path contract invocation, event streaming, and error cases.
- Documentation — README and MkDocs page describing configuration, supported Canton versions, and one usage example in cacti demos.
Alternatives considered
No response
Affected package(s)
No response
Additional context
Canton Network: https://www.canton.network/
Canton / Daml Ledger API reference: https://docs.daml.com/app-dev/ledger-api.html
Digital Asset Canton SDK: https://docs.digitalasset.com/canton/
Existing connector for reference: packages/cactus-plugin-ledger-connector-corda
Canton sandbox Docker image: digitalasset/canton-open-source (Apache-2.0 licensed variant)
Problem
Hyperledger Cacti currently lacks a ledger connector for the Canton Network (Digital Asset's privacy-enabled blockchain platform built on Daml). As enterprise adoption of Canton grows—especially in financial-services use cases such as tokenized assets, digital cash, and synchronized ledgers—interoperability with Canton becomes increasingly relevant.
A Canton connector would enable Cacti users to incorporate Canton Network use cases into existing interoperability workflows without having to build and maintain a separate integration outside of Cacti.
A few desired features:
Proposed solution
Implement a new package
cactus-plugin-ledger-connector-cantonfollowing the existingIPluginLedgerConnectorcontract and patterns established by connectors such ascactus-plugin-ledger-connector-besu.High-level scope:
IPluginLedgerConnectorimplementation — exposetransact, runTransaction, getConsensusAlgorithmFamily,and related standard methods.WatchBlocksV1endpoint — stream Canton ledger events (transaction trees / flat transactions) as Cacti block events.Alternatives considered
No response
Affected package(s)
No response
Additional context
Canton Network: https://www.canton.network/
Canton / Daml Ledger API reference: https://docs.daml.com/app-dev/ledger-api.html
Digital Asset Canton SDK: https://docs.digitalasset.com/canton/
Existing connector for reference: packages/cactus-plugin-ledger-connector-corda
Canton sandbox Docker image: digitalasset/canton-open-source (Apache-2.0 licensed variant)