CRE Workflows HubCRE Workflows Hub
  • Workflows
  • Chainlink repo
  • Sign in
CRE Workflows Hub
  • Workflows
  • Docs
  • Contribute workflow
  • Chainlink CRE Templates

A registry for Chainlink Runtime Environment workflows. List and share your CRE workflows without waiting for upstream approval.

Back

Created by Chainlink Labs

Stablecoin with PoR, ACE & CCIP

A demo stablecoin issuance system demonstrating CRE integrated with Proof of Reserve (PoR), Automated Compliance Engine (ACE), and Cross-Chain Interoperability Protocol (CCIP).

View on GitHub
TypeScript

What This Template Does This repository demonstrates how financial institutions can build a secure, compliant, multi-chain stablecoin using Chainlink's complete service stack. The demo progresses through three phases:

Phase 1: Traditional banks trigger stablecoin minting and redemption using SWIFT-style messages via HTTP. CRE orchestrates the workflow, validates messages, and submits cryptographically-signed reports to mint or burn tokens on-chain.

Phase 2: Cross-chain stablecoin transfers using CCIP. Users can transfer tokens between Ethereum Sepolia and Avalanche Fuji testnets with automatic token burning on the source chain and minting on the destination.

Phase 3: Advanced multi-service integration (production requires additional audits and hardening) that combines:

  • Proof of Reserve (PoR) - Validates sufficient off-chain reserves before minting (prevents over-collateralization issues)
  • Automated Compliance Engine (ACE) - Enforces on-chain policies like address blacklisting for regulatory compliance
  • CCIP - Secure cross-chain transfers with compliance checks at both mint and transfer stages

Key Technologies:

  • CRE (Chainlink Runtime Environment) - Orchestrates multi-service workflows with DON consensus
  • PoR (Proof of Reserve) - External reserve validation
  • ACE (Automated Compliance Engine) - On-chain policy enforcement
  • CCIP (Cross-Chain Interoperability Protocol) - Secure token bridging

Repository Structure Workflows: bank-stablecoin-workflow/ (Phase 1), ccip-transfer-workflow/ (Phase 2), bank-stablecoin-por-ace-ccip-workflow/ (Phase 3). Contracts: StablecoinERC20.sol, MintingConsumer.sol, CCIPTransferConsumer.sol, MintingConsumerWithACE.sol, CCIPTransferConsumerWithACE.sol, AddressBlacklistPolicy.sol, UnifiedExtractor.sol.

Pre-Deployed on Sepolia: StablecoinERC20, BurnMintTokenPool, PolicyEngine, AddressBlacklistPolicy, VolumePolicy, MintingConsumerWithACE, CCIPTransferConsumerWithACE (addresses in README).

Quick Test: cp .env.example .env, cp secrets.yaml.example secrets.yaml, export CRE_PROJECT_ROOT, cd bank-stablecoin-por-ace-ccip-workflow && bun install, cre workflow simulate with http-payload.

CRE Capabilities: HTTP Triggers, Node Mode (PoR), EVM Capabilities, Multi-Service Orchestration. ACE: PolicyEngine, Custom Extractors, Address Blacklist, Upgradeable Proxies.

Security: Demo - not production-ready. Verify PoR data sources. ACE policies are examples. Use your own RPCs.

Install the CRE CLI to use this template

You can use the command below or download the latest CLI release on GitHub.

curl -sSL https://cre.chain.link/install.sh | bash
Author
Chainlink Labs
LicenseMIT

Disclaimer

This template represents an educational example to use a Chainlink system, product, or service and is provided to demonstrate how to interact with Chainlink's systems, products, and services to integrate them into your own. This template is provided "AS IS" and "AS AVAILABLE" without warranties of any kind, it has not been audited, and it may be missing key checks or error handling to make the usage of the system, product or service more clear. Do not use this example in a production environment without completing your own audits and application of best practices. Neither Chainlink Labs, the Chainlink Foundation, nor Chainlink node operators are responsible for unintended outputs that are generated due to errors in code.