Skip to main content
Walley gives your application four ways to work with the Canton Network on a user’s behalf.

TypeScript dApp SDK

For browser dApps. The user’s Walley wallet holds the key; your dApp requests a connection and submits transactions through a popup the user approves.

Python SDK

For servers and automation. Your process holds the Ed25519 key and prepares, signs, and submits transactions directly, without a popup.

HTTP API

The REST API both SDKs are built on. Call it from any language: auth, ledger reads, and transaction submission over plain HTTPS.

gRPC API

For existing Canton clients. Build and sign interactive submissions yourself and point them at Walley’s fee-charging Ledger API endpoint.

Which one?

Network fees

Every path shares one fee model. Canton network traffic is charged in CC (Canton Coin) against a prepaid traffic balance: users buy traffic ahead of time and each transaction draws it down. A single transaction can be fronted when the balance can’t cover its fee (the balance goes negative by that one transaction), after which transactions are refused until the balance is topped up. Where the fee surfaces differs by path:
  • dApp SDK: invisible to your integration; the user’s wallet balance covers it.
  • Python SDK: quoted on prepare, drawn from the balance you top up with client.traffic.purchase(...).
  • HTTP API: quoted in the prepare response, drawn from the same balance.
  • gRPC API: quoted at prepare, reserved at execute, and settled from the transaction’s completion.
More can be read about the fee surface of each SDK/API on their respective pages.