arrow-left
All pages
gitbookPowered by GitBook
1 of 1

Loading...

Canton

This guide explains how institutional clients can access and consume Kaiko's Reference Rates through the Canton Network. This setup offers EU BMR-compliant reference pricing via a secure, decentralized infrastructure designed specifically for institutions requiring regulatory-compliant market data. You can find out more about Kaiko Benchmark References rates herearrow-up-right, including the methodologies and coverage.

hashtag
Before you start

Contact Kaiko Support at [email protected]envelope to get the latest DAR files and installation scripts. We'll send you the DAR files, which are made up of three smart contract components:

  • AppInstall: Manages data provider installations and authorization

  • DataPointMetadata: Defines asset metadata specifications and publication parameters

  • PublishedDataPoint: Contains verified price data with cryptographic timestamps, updated by Kaiko.

circle-info

All DataPoint contracts are created with strict privacy controls, ensuring data visibility only to authorized parties within your organization's Canton environment.

hashtag
Integration process

  1. Install your DAR files - Upload the provided DAR files to your designated Canton validator node, following the installation scripts provided during onboarding.

  2. Share your Party ID - Once installed, contact the Kaiko Support team and provide your Party ID. We will then configure your data feed on-chain so it's ready to consume.

  3. Import the template - Import the DataPoint template into your existing DAML workflows by adding it as a dependency within your application architecture.

And that's it. You're up and running!

hashtag
Contract data structure

The PublishedDataPoint contract has the following standardized structure for institutional consumption:

Access the data - Access published data points through the standardized get choice interface:

nonconsuming choice PublishedDataPoint_Get : PublishedDataPoint_Get_Result
  with
    actor : Party
  controller actor
  do
    pure PublishedDataPoint_Get_Result with publishedDataPoint = this
{
  "contractId": "00f56fe6...cf30cf39",
  "observers": ["YOUR-PARTY-ID"],
  "payload": {
    "oracle": "kaiko-onchain-oracle::122...9a9",
    "dataPointState": {
      "createdAt": "2025-06-16T09:25:01.469352Z",
      "lastUpdatedAt": "2025-07-10T14:01:03.377084Z",
      "createdBy": "kaiko-onchain-data-provider::122...9a9",
      "lastUpdatedBy": "kaiko-onchain-data-provider::122...9a9"
    },
    "dataProvider": "kaiko-onchain-data-provider::122...9a9",
    "dataPoint": {
      "tag": "Scalar",
      "value": "110850.46"
    }
    "dataPointParams": {
      "name": "btc-usd",
      "description": "Bitcoin",
      "unitOfMeasurement": "USD",
      "category": "Pairs"
    }
  }
}