OData for
Cardano
OData V4 service exposing the Cardano blockchain. Packaged as a
SAP CAP plugin - install with npm, configure via cds.requires, Cardano services register automatically.
# Install the CAP plugin npm install @odatano/core # package.json (cds.requires) "odatano-core": { "network": "preview", "backends": ["blockfrost"], "blockfrostApiKey": "preview_api_key", "txBuilders": ["buildooor"] } # POST - build a simple ADA transaction POST .../cardano-transaction/BuildSimpleAdaTransaction { "senderAddress": "addr1...", "recipientAddress": "addr1...", "lovelaceAmount": 5000000 }
Architecture
Any OData V4 client connects to ODATANO's three CDS services. ODATANO
orchestrates Blockfrost, Koios, and Ogmios with automatic failover,
indexes results into SQLite or HANA, and routes transaction submission
to the configured backend. Three Cardano networks supported: mainnet, preview, preprod.
Your Application
ODATANO
Cardano Blockchain
CDS services
Cardano core usage is exposed as OData V4 entities and actions.
Standard query options ($filter, $select,
$expand, $orderby) work as in any OData
service. Full metadata available at $metadata.
Read
CardanoODataService: 18 entities, 16 actions. Blocks,
Transactions, Addresses, UTxOs, Pools, Accounts, DReps, Protocol
Parameters, transaction CBOR parser. Lazy on-demand indexing with
TTL refresh.
Transactions
CardanoTransactionService: 13 actions. ADA transfers,
multi-asset, mint, Plutus V3 spend, CIP-20 metadata, CIP-31
reference inputs, CIP-33 reference scripts. Two builder engines: CSL
and Buildooor.
Signing
CardanoSignService: 8 actions. External signing via
CIP-30 wallets or Cardano CLI; server-side signing via PKCS#11 HSM.
Private keys never reach the server in any flow.
Stack
Runtime, dependencies, and test coverage.
TRACE
SAP Fiori + CAP application built on top of @odatano/core. Tracks pharmaceutical batches across manufacturer, distributor, and
pharmacy using NFTs minted under a Plutus V3 policy. Each handoff is a
Plutus spend with a continuing-output datum update. Document hashes
(certificates, lab reports, cold-chain telemetry) are anchored via
CIP-20 metadata. All signing happens in the user's CIP-30 browser
wallet.