# Flash Mint Engine

The $USC Flash Mint Engine is the minting mechanism of the Colb ecosystem. It enables the issuance of $USC stablecoins against approved stable assets at a fixed 1:1 value to the U.S. dollar.

All $USC issuance is fully collateralized and subject to protocol-defined access controls, pricing safeguards, and operational limits.

***

### Minting

Flash Mint is a fast OTC-style process that allows users to mint $USC by exchanging approved third-party stablecoins.

$USC is minted exclusively by depositing approved stable assets into the Colb Treasury. Minting occurs atomically, ensuring that $USC is issued only when equivalent USD value has been received.

Minted $USC may be delivered to the initiating account or to another approved recipient, supporting institutional custody and settlement workflows.

The stablecoins received through Flash Mint are not part of $USC reserves. They are temporarily held by the Trust for operational settlement purposes.

These stablecoins are held for up to 60 days, during which they are converted into cash. Once converted, the cash proceeds are transferred to the Trust’s Core Reserves, which back $USC.

Flash Mint is designed as a temporary settlement mechanism, enabling fast on-chain execution while preserving the principle that $USC is ultimately backed by cash and U.S. Treasury Bills only.

***

### Pricing & Stability

$USC is issued at a constant 1.00 USD per token.

The Engine relies on approved pricing sources to determine the USD value of deposited assets. Minting activity is restricted if asset prices deviate beyond predefined tolerance thresholds, providing automated protection against depegging events and market instability.

Pricing parameters and tolerance thresholds are configurable at the protocol level.

***

### Fees

Minting activity may incur protocol fees, expressed in basis points and collected in the deposited asset.

Fees:

* Accrue at the time of minting
* Are transferred directly to the Colb Treasury
* May be set globally or customized on a per-account basis

The fee framework supports tiered pricing and institutional agreements.

***

### Access&#x20;

Minting and receipt of $USC are restricted to approved accounts through the Colb Whitelist system.

Access requirements apply to both the initiating account and any designated recipient.

***

### Daily Limits

The Engine enforces daily minting limits on a per-account basis.

* Default limits apply to all users equal to 100k $USC per day
* Custom limits may be assigned to specific accounts
* Limits reset on a rolling daily basis
* Limits may be temporarily disabled by administrators

***

### Supported Assets

Only approved stable assets may be used for minting $USC.

Each supported asset is governed by protocol-defined parameters, including pricing validation rules and operational status. Assets may be added, disabled, or permanently removed by authorized administrators.

**The current supported assets are $USDC and $USDT.**

#### Polygon Network

| Asset | Contract Address                             | Whitelisted | Price Deviation Tolerance | Permit Support | Fee Rate |
| ----- | -------------------------------------------- | ----------- | ------------------------- | -------------- | -------- |
| USDC  | `0x3c499c542cef5e3811e1192ce70d8cc03d5c3359` | Yes         | ±0.15%                    | Yes            | 50 (BPS) |
| USDT  | `0xc2132D05D31c914a87C6611C10748AEb04B58e8F` | Yes         | ±0.15%                    | No             | 50 (BPS) |

***

#### Ethereum Network

| Asset | Contract Address                             | Whitelisted | Price Deviation Tolerance | Permit Support | Fee Rate |
| ----- | -------------------------------------------- | ----------- | ------------------------- | -------------- | -------- |
| USDC  | `0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48` | Yes         | ±0.15%                    | Yes            | 50 (BPS) |
| USDT  | `0xdac17f958d2ee523a2206206994597c13d831ec7` | Yes         | ±0.15%                    | No             | 50 (BPS) |

***

### Compliance with ERC-7726: Common Quote Oracle Standard

The Engine supports oracle adapters per asset and performs comprehensive validations before authorizing minting or other sensitive operations. Thanks to the ERC-7726 standard, future developments can easily map more than one oracle per asset, creating a more resilient and manipulation-resistant system through redundancy and aggregation.

The Engine prices are derived from Chainlink AggregatorV3 feeds <https://docs.chain.link/data-feeds/api-reference#functions-in-aggregatorv3interface>. The adapters validate the underlying data and return the final quote in 18-decimal precision (scaled to represent USD values consistently).

ERC-7726 provides a standardized, quote-based API for price data feeds. It eliminates the need for custom implementations per provider by focusing on absolute amounts (rather than price ratios), handling decimal differences internally, and promoting secure, consistent integrations.

#### **Key features of ERC-7726 include:**

* A single view function: `getQuote(uint256 baseAmount, address base, address quote)` Returns the equivalent value of baseAmount of the base asset in terms of the quote asset, rounded down toward 0, with built-in overflow protection.
* Special address conventions for non-ERC-20 assets (e.g., fiat currencies via ISO 4217 codes). For USD (ISO 4217 code 840), the standard quote address is: `0x0000000000000000000000000000000000000348`

This design enables seamless switching between oracle providers (e.g., from Chainlink to others like Pyth or RedStone) without modifying the core Engine contracts. It ensures decimal-agnostic queries, reduces integration complexity, and enhances overall security by abstracting provider-specific details.

The $USC system queries the adapter with `getQuote(10**decimals, assetAddress, USD_ADDRESS)` to obtain the USD value of **one full unit** of a whitelisted asset - a standardized, reliable approach that aligns with best practices in modern DeFi oracle design.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.colb.finance/payments-core-tech/engine.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
