CCIP Tutorials: Canton as Source
Canton as Source (canton2any) tutorials cover sending from Canton — Canton is the source chain, a remote CCIP-supported chain (Ethereum Sepolia in the starter kit) is the destination.
Tutorials use the ccip-starter-kit-canton on @chainlink/ccip-sdk.
Getting Started
- Prerequisites for Canton as Source — Clone the starter kit, configure Canton ledger access, Okta JWT, and fund Amulet/LINK.
- Canton as Source flow — On-ledger send path in the overview.
Tutorials by Use Case
| Tutorial | Script | Description |
|---|---|---|
| Arbitrary Messaging | canton2any:data | Send a data-only message from Canton |
| Token Transfers | canton2any:token | Bridge LINK from Canton to Sepolia |
| Programmable Token Transfers | canton2any:data-and-token | Send LINK plus calldata to a Sepolia receiver |
Common Flow (all canton2any tutorials)
- Fetch explicit disclosures from Global CCIP EDS (and token pool operator EDS for token messages)
- Create or reuse
CCIPSenderandPerPartyRouteron Canton - Submit via
PerPartyRouter_CCIPSendwith CommitteeVerifier tickets (and token pool tickets when applicable) - Track delivery in CCIP Explorer
- Destination execution on Sepolia runs automatically by default, or via
canton2any:manual-execwith--no-exec
Prerequisites
- Starter kit setup
- Amulet (default) or LINK on Canton for CCIP fees
- LINK on Canton for token transfer and PTT tutorials
- Token pool registered on TAR for token messages — see CCT guides