# Table of Contents - [Introduction to Capital Efficient Stablecoins - Reflect Money](#introduction-to-capital-efficient-stablecoins-reflect-money) - [Oracle SDK - Reflect Money](#oracle-sdk-reflect-money) - [Whitelabel SDK - Reflect Money](#whitelabel-sdk-reflect-money) - [Properties of Capital Efficient Stablecoins - Reflect Money](#properties-of-capital-efficient-stablecoins-reflect-money) - [Restaking SDK - Reflect Money](#restaking-sdk-reflect-money) - [Stablecoin SDK - Reflect Money](#stablecoin-sdk-reflect-money) - [Interest Rates & Distribution - Reflect Money](#interest-rates-distribution-reflect-money) - [Get recent events - Reflect Money](#get-recent-events-reflect-money) - [Get events by signer - Reflect Money](#get-events-by-signer-reflect-money) - [Generate mint transaction - Reflect Money](#generate-mint-transaction-reflect-money) - [Get current exchange rate - Reflect Money](#get-current-exchange-rate-reflect-money) - [Generate redemption transaction - Reflect Money](#generate-redemption-transaction-reflect-money) - [Get historical integration statistics - Reflect Money](#get-historical-integration-statistics-reflect-money) - [Get integration statistics - Reflect Money](#get-integration-statistics-reflect-money) - [Get integration configuration - Reflect Money](#get-integration-configuration-reflect-money) - [Get integrations by authority - Reflect Money](#get-integrations-by-authority-reflect-money) - [Initialize a stablecoin token - Reflect Money](#initialize-a-stablecoin-token-reflect-money) - [Initialize an integration - Reflect Money](#initialize-an-integration-reflect-money) - [Initialize integration vault - Reflect Money](#initialize-integration-vault-reflect-money) - [Initialize user branded token account - Reflect Money](#initialize-user-branded-token-account-reflect-money) - [Mint stablecoin and whitelabel in single transaction - Reflect Money](#mint-stablecoin-and-whitelabel-in-single-transaction-reflect-money) - [Redeem whitelabeled stablecoin in single transaction - Reflect Money](#redeem-whitelabeled-stablecoin-in-single-transaction-reflect-money) - [Transfer mint authority - Reflect Money](#transfer-mint-authority-reflect-money) - [Health check - Reflect Money](#health-check-reflect-money) - [Update integration configuration - Reflect Money](#update-integration-configuration-reflect-money) - [Whitelist integration users - Reflect Money](#whitelist-integration-users-reflect-money) - [Generate burn transaction - Reflect Money](#generate-burn-transaction-reflect-money) - [Generate claim transaction - Reflect Money](#generate-claim-transaction-reflect-money) - [Generate mint transaction - Reflect Money](#generate-mint-transaction-reflect-money) - [Get APY for all stablecoins - Reflect Money](#get-apy-for-all-stablecoins-reflect-money) - [Get available stablecoin types - Reflect Money](#get-available-stablecoin-types-reflect-money) - [Get APY for specific stablecoin - Reflect Money](#get-apy-for-specific-stablecoin-reflect-money) - [Get quote for mint or redeem - Reflect Money](#get-quote-for-mint-or-redeem-reflect-money) - [Get historical exchange rates for a stablecoin - Reflect Money](#get-historical-exchange-rates-for-a-stablecoin-reflect-money) - [Get latest exchange rates for all stablecoins - Reflect Money](#get-latest-exchange-rates-for-all-stablecoins-reflect-money) - [Get historical APY data for specific stablecoin - Reflect Money](#get-historical-apy-data-for-specific-stablecoin-reflect-money) - [Get realtime exchange rate for a stablecoin - Reflect Money](#get-realtime-exchange-rate-for-a-stablecoin-reflect-money) - [Get supply cap information for all stablecoins - Reflect Money](#get-supply-cap-information-for-all-stablecoins-reflect-money) - [Code Security Audit(s) - Reflect Money](#code-security-audit-s-reflect-money) - [Overview of Reflect(s) Risk. - Reflect Money](#overview-of-reflect-s-risk-reflect-money) - [Introduction to Capital Efficient Stablecoins - Reflect Money](#introduction-to-capital-efficient-stablecoins-reflect-money) - [Cross-Margin Rate Farming - Reflect Money](#cross-margin-rate-farming-reflect-money) - [Get historical TVL and volume data - Reflect Money](#get-historical-tvl-and-volume-data-reflect-money) - [Get protocol statistics - Reflect Money](#get-protocol-statistics-reflect-money) - [Page Not Found](#page-not-found) --- # Introduction to Capital Efficient Stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/introduction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Protocol Overview Introduction to Capital Efficient Stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [What is Reflect Money?](https://docs.reflect.money/introduction#what-is-reflect-money%3F) * [Core Components of Reflect Money](https://docs.reflect.money/introduction#core-components-of-reflect-money) ![docs-home-image](https://github.com/palindrome-eng/docs/blob/main/images/docs-home-image.png?raw=true) Welcome to Reflect.Money Documentation -------------------------------------- You’re here to learn about **Reflect Money** and how it allows for the tokenization of onchain DeFi strategy in the form of US Dollars. Let’s start with some basic information below. [​](https://docs.reflect.money/introduction#what-is-reflect-money%3F) What is Reflect Money? ----------------------------------------------------------------------------------------------- Reflect is credibly-neutral stablecoin software, where the software consists of insured, decentralized financial strategies executed and managed permissionlessly by programs rather than humans. Reflect then **tokenizes these strategies** in the form of interest-bearing US Dollars (stablecoins). Get a Deeper Understanding A more technical shortform explanation for what Reflect Money is. Reflect Money is Spinal-Level Financial Infrastructure for onchain capital efficiency through permissionless and programmable intermediation—its systems enable users and developers to capture the productivity of any onchain monetary expanse seamlessly without dealing with centralized parties, human-operated risk management, etc.Financial intermediation in the blockchain industry has traditionally been centralized, operated by closed-source, human-reliant systems that don’t scale to meet the growing monetary expansion of onchain environments such as DeFi. This has led to massive capital inefficiency and significant segmentation of available capital. Reflect solves this through transparent, strategic money that anyone can issue and redeem, **backed entirely by onchain DeFi strategy.** ### [​](https://docs.reflect.money/introduction#core-components-of-reflect-money) Core Components of Reflect Money Reflect Money _comprises three foundational-level systems, which are described below:_ Tokenization ------------ Tokenization refers to the act of representing something (an object, financial product, or fungible asset) on a public blockchain as a ‘token’ that is tradable and transferable among accounts. In the case of Reflect, it is tokenizing deposits in its strategies. Decentralized Financial Strategy -------------------------------- Financial strategies such as _lending, asset diversification, basis trades, money markets_ and more can all be taken advantage of onchain today at the cost of opportunity, i.e., your deposit mostly stays with the program in which you deposit. Reflect builds programs to match the most effective onchain financial strategies where your deposit is tokenized in stablecoin format, resulting in zero opportunity cost. Verifiable Insurance -------------------- Every tokenized DeFi strategy (stablecoin) issued by Reflect Programs is coupled with its own unique insurance program, which allows for the automation of insurance claims through verifiable consensus on attestations. It achieves this through the use of zk and restaking for economic security and capitalization. [Properties of Capital Efficient Stablecoins](https://docs.reflect.money/currencies) ⌘I --- # Oracle SDK - Reflect Money [Skip to main content](https://docs.reflect.money/api-reference/oracle#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Developer Kits Oracle SDK [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Installation](https://docs.reflect.money/api-reference/oracle#installation) * [Overview](https://docs.reflect.money/api-reference/oracle#overview) * [Quick Start](https://docs.reflect.money/api-reference/oracle#quick-start) * [Updating an Oracle](https://docs.reflect.money/api-reference/oracle#updating-an-oracle) * [Fetching Oracle Data](https://docs.reflect.money/api-reference/oracle#fetching-oracle-data) * [Creating an Oracle Account](https://docs.reflect.money/api-reference/oracle#creating-an-oracle-account) * [Payloads and Serializers](https://docs.reflect.money/api-reference/oracle#payloads-and-serializers) * [Links](https://docs.reflect.money/api-reference/oracle#links) * [License](https://docs.reflect.money/api-reference/oracle#license) ### [​](https://docs.reflect.money/api-reference/oracle#installation) Installation To install the Reflect Oracle SDK within your development environment, run one of the following commands: yarn npm pnpm Copy yarn add @reflectmoney/oracle.ts ### [​](https://docs.reflect.money/api-reference/oracle#overview) Overview Doppler is the oracle solution used by Reflect. It enables extremely efficient oracle updates on Solana, requiring as little as 21 compute units per update. We use a fork of Doppler that uses 32 CUs due to additional call to Clock sysvar. * **Program ID**: `PRicevBH6BaeaE8qmrxrwGBZ5hSZ9vjBNue5Ygot1ML` The SDK exposes the `Doppler` class for interacting with oracle accounts: creating new oracle accounts, updating their payloads, and reading the latest data. ### [​](https://docs.reflect.money/api-reference/oracle#quick-start) Quick Start Initialize a `Doppler` instance with a Solana connection and an authority keypair. initialize.ts Copy import { Doppler } from "@reflectmoney/oracle.ts"; import { Connection, Keypair } from "@solana/web3.js"; const connection = new Connection("https://api.mainnet-beta.solana.com"); const admin = Keypair.fromSecretKey(/* admin secret key bytes */); const doppler = new Doppler(connection, admin); ### [​](https://docs.reflect.money/api-reference/oracle#updating-an-oracle) Updating an Oracle Create an 8-byte payload (u64) and submit an update for an existing oracle account. updateOracle.ts Copy import { PublicKey } from "@solana/web3.js"; import { createPricePayload, U8Array8Serializer } from "@reflectmoney/oracle.ts"; const oraclePublicKey = new PublicKey("ORACLE_ADDRESS"); // 8-byte payload representing a u64 value (e.g., 1_000_000 for 1 USDC with 6 decimals) const pricePayload = createPricePayload(BigInt(1_000_000)); await doppler.updateOracle( oraclePublicKey, { slot: BigInt(Date.now()), payload: pricePayload, }, new U8Array8Serializer(), ); ### [​](https://docs.reflect.money/api-reference/oracle#fetching-oracle-data) Fetching Oracle Data Read the latest oracle state and decode the price from the 8-byte payload. fetchOracle.ts Copy import { PublicKey } from "@solana/web3.js"; import { U8Array8Serializer, readPriceFromPayload } from "@reflectmoney/oracle.ts"; const oraclePublicKey = new PublicKey("ORACLE_ADDRESS"); const oracleData = await doppler.fetchOracle( oraclePublicKey, new U8Array8Serializer(), ); if (oracleData) { console.log("Slot:", oracleData.slot); const price = readPriceFromPayload(oracleData.payload); console.log("Price:", price); } // Example output: // Slot: 1728662400000n // Price: 1000000n ### [​](https://docs.reflect.money/api-reference/oracle#creating-an-oracle-account) Creating an Oracle Account Create a new oracle account with an initial payload and slot. createOracle.ts Copy import { U8Array8Serializer, createPricePayload } from "@reflectmoney/oracle.ts"; const oracleAccount = await doppler.createOracleAccount( "my-oracle-seed", new U8Array8Serializer(), { slot: 0n, payload: createPricePayload(BigInt(1_000_000)), } ); ### [​](https://docs.reflect.money/api-reference/oracle#payloads-and-serializers) Payloads and Serializers * **Payload format**: 8-byte array representing a u64. For prices, this commonly encodes fixed-point integers (e.g., micro-units for 6-decimal tokens). * **Helpers**: `createPricePayload(u64)` and `readPriceFromPayload(payload)` provide convenient encoding/decoding for price data. * **Serializer**: Use `U8Array8Serializer` to serialize and deserialize the 8-byte payloads when calling `updateOracle` and `fetchOracle`. [​](https://docs.reflect.money/api-reference/oracle#links) Links ------------------------------------------------------------------- * **Reflect**: [https://reflect.money](https://reflect.money/) [​](https://docs.reflect.money/api-reference/oracle#license) License ----------------------------------------------------------------------- MIT [Whitelabel SDK](https://docs.reflect.money/api-reference/proxy) ⌘I --- # Whitelabel SDK - Reflect Money [Skip to main content](https://docs.reflect.money/api-reference/proxy#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Developer Kits Whitelabel SDK [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Installation](https://docs.reflect.money/api-reference/proxy#installation) * [Overview](https://docs.reflect.money/api-reference/proxy#overview) * [Quick Start](https://docs.reflect.money/api-reference/proxy#quick-start) * [Proxy Methods](https://docs.reflect.money/api-reference/proxy#proxy-methods) * [PdaClient](https://docs.reflect.money/api-reference/proxy#pdaclient) * [Usage Examples](https://docs.reflect.money/api-reference/proxy#usage-examples) * [Creating a New Proxy](https://docs.reflect.money/api-reference/proxy#creating-a-new-proxy) * [Loading and Using an Existing Proxy](https://docs.reflect.money/api-reference/proxy#loading-and-using-an-existing-proxy) * [Depositing Stablecoins](https://docs.reflect.money/api-reference/proxy#depositing-stablecoins) * [Withdrawing to Stablecoins](https://docs.reflect.money/api-reference/proxy#withdrawing-to-stablecoins) * [Claiming Fees (Authority Only)](https://docs.reflect.money/api-reference/proxy#claiming-fees-authority-only) * [Working with PDAs](https://docs.reflect.money/api-reference/proxy#working-with-pdas) * [Constants](https://docs.reflect.money/api-reference/proxy#constants) * [Support](https://docs.reflect.money/api-reference/proxy#support) * [License](https://docs.reflect.money/api-reference/proxy#license) ### [​](https://docs.reflect.money/api-reference/proxy#installation) Installation To install Reflect Whitelabel SDK within your development environment, run the following command: yarn npm pnpm Copy yarn add @reflectmoney/proxy.ts ### [​](https://docs.reflect.money/api-reference/proxy#overview) Overview Use this SDK to interact with Reflect Proxy Program, an on-chain infrastructure for minting and redeeming whitelabel yield-bearing stablecoins backed by collateral in Reflect. This SDK offers high-level functionality for creating new proxy, issuing a branded stablecoin, minting, redeeming and managing the integration. ### [​](https://docs.reflect.money/api-reference/proxy#quick-start) Quick Start To create new proxy, use the static `initialize` method on the `Proxy` class exported from the SDK. When creating new proxy instance via constructor, SDK expects on-chain accounts to be already initialized and loads them silently. Only use the constructor after setting up the on-chain proxy first. initialize.ts Copy import { Proxy, USDC_PLUS_MINT } from "@reflectmoney/proxy.ts"; import { createSolanaRpc, address } from "@solana/kit"; // Initialize connection const connection = createSolanaRpc("https://api.mainnet-beta.solana.com"); // Create a new proxy const createProxyIx = await Proxy.initialize({ signer, brandedMint: address(""), feeBps: 100, // 1% fee stablecoinMint: address(USDC_PLUS_MINT) }); // Transaction sign & send logic To load existing proxy, just use the constructor. In the background, SDK will lazy-load all the necessary on-chain state. load.ts Copy import { Proxy } from "@reflectmoney/proxy.ts"; import { createSolanaRpc, address } from "@solana/kit"; // Initialize connection const connection = createSolanaRpc("https://api.mainnet-beta.solana.com"); // Create an instance of existing proxy const proxy = new Proxy({ connection, proxyStateAddress: address("") }); If you don’t know the proxy account address, use loadFromMint method that will load your Proxy being provided with the mint address of your branded stablecoin. loadFromMint.ts Copy import { Proxy } from "@reflectmoney/proxy.ts"; import { createSolanaRpc, address } from "@solana/kit"; // Initialize connection const connection = createSolanaRpc("https://api.mainnet-beta.solana.com"); // Create an instance of existing proxy from mint const proxy = Proxy.loadFromMint({ connection, brandedMint: address("") }); [​](https://docs.reflect.money/api-reference/proxy#proxy-methods) Proxy Methods ---------------------------------------------------------------------------------- ##### `initialize(params)` Creates a new proxy state account with the specified configuration. **Parameters:** * `signer: TransactionSigner` - The transaction signer who will pay for the transaction * `authority?: Address` - Optional authority address (defaults to signer address) * `brandedMint: Address` - The mint address of the branded token * `feeBps: number` - The fee in basis points (e.g., 100 = 1%) * `stablecoinMint: Address` - The mint address of the underlying stablecoin **Returns:** `Promise` - A create proxy instruction ##### `loadFromMint(params)` Creates a new Proxy instance by deriving the proxy state address from a branded mint. **Parameters:** * `connection: Rpc` - The Solana RPC connection * `brandedMint: Address` - The address of the branded mint **Returns:** `Promise` - A new Proxy instance with loaded state data ##### `load()` Reloads the proxy state data from the blockchain. It is lazily loaded when Proxy instance is initially created. Call to refresh the data. **Returns:** `Promise` ##### `deposit(params)` Creates a deposit instruction that converts stablecoins to branded tokens. **Parameters:** * `signer: TransactionSigner` - The transaction signer who owns the tokens being deposited * `amount: number` - The amount of stablecoins to deposit **Returns:** `Promise` - A deposit instruction ##### `withdraw(params)` Creates a withdraw instruction that converts branded tokens back to stablecoins. **Parameters:** * `signer: TransactionSigner` - The transaction signer who owns the branded tokens * `amount: number` - The amount of branded tokens to withdraw **Returns:** `Promise` - A withdraw instruction ##### `claimFees()` Creates a claim fees instruction for the proxy authority to collect accumulated fees. **Returns:** `Promise` - A claim fees instruction ### [​](https://docs.reflect.money/api-reference/proxy#pdaclient) PdaClient Utility class for finding PDAs. ##### `deriveProxyState(brandedMint)` Derives the proxy state PDA from a branded mint address. **Parameters:** * `brandedMint: Address` - The branded mint address **Returns:** `Promise<[Address, number]>` - A tuple containing the PDA address and bump seed [​](https://docs.reflect.money/api-reference/proxy#usage-examples) Usage Examples ------------------------------------------------------------------------------------ ### [​](https://docs.reflect.money/api-reference/proxy#creating-a-new-proxy) Creating a New Proxy Copy import { Proxy, USDC_PLUS_MINT } from "@reflectmoney/proxy.ts"; import { address } from "@solana/kit"; const createInstruction = await Proxy.initialize({ signer: myWallet, authority: address("AuthorityAddress"), brandedMint: address("BrandedTokenMint"), feeBps: 50, // 0.5% fee stablecoinMint: address(USDC_PLUS_MINT) // USDC+ }); ### [​](https://docs.reflect.money/api-reference/proxy#loading-and-using-an-existing-proxy) Loading and Using an Existing Proxy Copy // Method 1: Load from mint address const proxy = await Proxy.loadFromMint({ connection: myConnection, brandedMint: address("BrandedTokenMint") }); // Method 2: Create instance and re-load manually const proxy2 = new Proxy({ connection: myConnection, proxyAddress: address("ProxyStateAddress") }); await proxy2.load(); ### [​](https://docs.reflect.money/api-reference/proxy#depositing-stablecoins) Depositing Stablecoins Copy const depositInstruction = await proxy.deposit({ signer: myWallet, amount: 1_000_000 // 1 USDC+ (6 decimals) }); ### [​](https://docs.reflect.money/api-reference/proxy#withdrawing-to-stablecoins) Withdrawing to Stablecoins Copy const withdrawInstruction = await proxy.withdraw({ signer: myWallet, amount: 1_000_000 // 1 branded token (6 decimals) }); ### [​](https://docs.reflect.money/api-reference/proxy#claiming-fees-authority-only) Claiming Fees (Authority Only) Copy const claimFeesInstruction = await proxy.claimFees(); ### [​](https://docs.reflect.money/api-reference/proxy#working-with-pdas) Working with PDAs Copy import { PdaClient } from "@reflectmoney/proxy.ts"; const [proxyStateAddress, bump] = await PdaClient.deriveProxyState( address("") ); console.log("Proxy State PDA:", proxyStateAddress); console.log("Bump seed:", bump); [​](https://docs.reflect.money/api-reference/proxy#constants) Constants -------------------------------------------------------------------------- The SDK exports the following constants: * `PROXY_STATE_SEED` - The seed used for proxy state PDA derivation * `USDC_PLUS_ORACLE` - The oracle address tracking the real-time USDC+ exchange rate * `REFLECT_PROXY_PROGRAM_PROGRAM_ADDRESS` - The program ID [​](https://docs.reflect.money/api-reference/proxy#support) Support ---------------------------------------------------------------------- For issues, questions, or contributions: * **Repository:** [https://github.com/palindrome-eng/reflect-proxy-program](https://github.com/palindrome-eng/reflect-proxy-program) * **Authors:** L0STE, stablecoinjesus @ Palindrome Engineering [​](https://docs.reflect.money/api-reference/proxy#license) License ---------------------------------------------------------------------- MIT License [Restaking SDK](https://docs.reflect.money/api-reference/restaking) [Oracle SDK](https://docs.reflect.money/api-reference/oracle) ⌘I --- # Properties of Capital Efficient Stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/currencies#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Protocol Overview Properties of Capital Efficient Stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Public Stablecoins:](https://docs.reflect.money/currencies#public-stablecoins%3A) * [Why Capital Efficient Stablecoins from Reflect](https://docs.reflect.money/currencies#why-capital-efficient-stablecoins-from-reflect) * [Decentralised Finance Strategies:](https://docs.reflect.money/currencies#decentralised-finance-strategies%3A) * [Frequently Asked Questions (FAQs)](https://docs.reflect.money/currencies#frequently-asked-questions-faqs) ![docs-saas-image](https://github.com/palindrome-eng/docs/blob/main/images/docs-saas-image.png?raw=true) Capital Efficient Money via Onchain Strategy -------------------------------------------- This section of the documentation briefly covers the DeFi Strategy and Stablecoins managed by reflect programs. You will learn about different financial product types and how they affect the corresponding stablecoin via strategic stability. ### [​](https://docs.reflect.money/currencies#public-stablecoins%3A) Public Stablecoins: | **Ticker** | **DeFi Strategy** | **Collateral** | **Status** | **Audit(s)** | | --- | --- | --- | --- | --- | | USDJ | Delta-Neutral Funding Rate Capture | JLP | Not Live | _1 of 2_ | | USDC+ | Cross Margin (Lending) Rate Capture | USDC | LIVE | _1 of 2_ | ### [​](https://docs.reflect.money/currencies#why-capital-efficient-stablecoins-from-reflect) Why Capital Efficient Stablecoins from Reflect Reflect offers a truly open-framework for developers and users alike to own the yield-bearing infrastructure of the yield-bearing stablecoin industry. Model risk in realtime with instantly attestable data, create your own stablecoin with the underlying strategy that works for you. Non-Custodial ------------- * All collateral deposits are held in program accounts on the issuing network, with no access for any human party. _This means all of your funds are safe from human hands._ Permissionless -------------- * All Reflect-issued stablecoins can be created and redeemed at will, with no restrictions or required access controls. Liquid ------ Use the liquidity of the entire collateral pool(s) for MEV-less, perfect rate swaps between tokens—no more LP requirements or fees! Programmable ------------ Easily build next-generation stablecoin fintech applications using Reflect Money as the infrastructure-level intermediation service in just a few lines of code. Yield Bearing ------------- Due to the underlying productive capital all reflect issued stablecoins pay out interest rates at target-apy’s depending on the underlying strategy. Customisable ------------ Choose a strategy, wrap our insured base-stablecoins as your very own yield-bearing digital currency. ### [​](https://docs.reflect.money/currencies#decentralised-finance-strategies%3A) Decentralised Finance _Strategies:_ The engineering team behind [reflect.money](http://reflect.money/) is constantly _evaluating, researching and implementing_ potential new financial strategies that can be used in all market sectors as yield-bearing stablecoins. Delta-Neutral Funding Rate Capture ---------------------------------- This strategy utilises a single-sided delta-neutral trade whereby productive capital is deposited by users or integrated programs and the equal dollar value amount short position is opened against the likewise asset. i.e. if a user deposits 100$ of SOL then 100$ of SOL is shorted to create a zero delta position. This removes the exposure to price risk, i.e. _price going up and down_ - and instead increases exposure to the funding rate - a cash settled payment which helps to balance the pricing of the markets, this payment can be determined to be the yield and or potential loss of this strategy. Delta-Neutral Cross Margin Rate Capture --------------------------------------- This strategy utilises a double-sided delta-neutral trade whereby collateral is converted to cash upon deposit and used to place a trade on both sides of the same market at an identical strike price. This removes exposure to price and funding rate and increases exposure to cross-margin capital demands. Cross-margin capital rates are determined by how many people are leverage trading across all markets on the perpetual exchange. This demand to trade increases the demand for cash and thus increases the yield paid to those who deposit cash into the markets. ### [​](https://docs.reflect.money/currencies#frequently-asked-questions-faqs) _Frequently Asked Questions (FAQs)_ Are there any mint/redeem fees? **No**, there are zero fees when minting or redeeming Strategic Stablecoins. _Depending on the strategy chosen, there may be a temporary arb hold percentage._ How is the price of Reflected Currencies made to be stable? **Reflect-issued stablecoins have built-in stability mechanisms like rebalancing, debt settlement, and more within their onchain programs.** They can be called permissionlessly and automatically, allowing for the maximum frequency of attestation. Where does the Interest (yield) come from? **Interest rates or “yields” are generated via the productivity of the relevant DeFi Strategy** - for example, in the case of USDJ our single-sided delta-neutral token the yield is generated by those paying funding rates to leverage long SOL-USD. _In the case of other stablecoins this will vary._ Is the collateral in the program(s) insured? **Yes.** Reflect Protocol operates both a **hard cash insurance fund** and multiple **Restaked Validated Services** that offload protocol risk to network stakers in exchange for a portion of the revenue from each specific DeFi strategy that is tokenized. [Introduction to Capital Efficient Stablecoins](https://docs.reflect.money/introduction) [Interest Rates & Distribution](https://docs.reflect.money/interestrates) ⌘I --- # Restaking SDK - Reflect Money [Skip to main content](https://docs.reflect.money/api-reference/restaking#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Developer Kits Restaking SDK [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Installation](https://docs.reflect.money/api-reference/restaking#installation) * [Core](https://docs.reflect.money/api-reference/restaking#core) * [Initialization](https://docs.reflect.money/api-reference/restaking#initialization) * [Monitoring](https://docs.reflect.money/api-reference/restaking#monitoring) * [PDAs](https://docs.reflect.money/api-reference/restaking#pdas) * [Restaking](https://docs.reflect.money/api-reference/restaking#restaking) * [Start earning, claim appreciation w/Typescript](https://docs.reflect.money/api-reference/restaking#start-earning%2C-claim-appreciation-w%2Ftypescript) ### [​](https://docs.reflect.money/api-reference/restaking#installation) Installation To install Reflect Restaking SDK within your development environment, run the following command: yarn npm pnpm Copy yarn add @reflectmoney/restaking ### [​](https://docs.reflect.money/api-reference/restaking#core) Core This SDK allows for permissionless restaking of assets in the RLP, a pool providing liquidity for Reflect Protocol’s risk management, rebalancing and internal swaps. The SDK exports one simple module called `RLP`. This class exposes methods for restaking (and unstaking) assets from the RLP, as well as monitor the pool’s health and manage individual positions. ### [​](https://docs.reflect.money/api-reference/restaking#initialization) Initialization To initialize the Restaking SDK, simply use the constructor: initialize.ts Copy import { RLP } from "@reflectmoney/restaking" import { Connection } from "@solana/web3.js" const connection = new Connection("https://api.mainnet-beta.solana.com"); const rlp = new RLP(connection); ### [​](https://docs.reflect.money/api-reference/restaking#monitoring) Monitoring You can use various methods with `get` prefix to monitor the RLP state. To read the state of all lockups, use `getLockups`: getLockups.ts Copy const lockups = rlp.getLockups(); Use `getLockupsByAsset` to view all lockups, filtered by specific asset mint. getLockupsByAsset.ts Copy const USDC = new PublicKey(""); const lockups = rlp.getLockupsByAsset(USDC); `getAssets` allows you to fetch all assets whitelisted in the RLP and their stats. getAssets.ts Copy const USDC = new PublicKey(""); const lockups = rlp.getAssets(USDC); `getDeposits` and `getDepositsByUser` allows you to fetch individual deposits, and filter them by specific user public key. getDeposits.ts Copy const me = Keypair.generate().publicKey; const myDeposits = rlp.getDepositsByUser(me); Every withdrawal must go through a cooldown period. Use `getCooldowns`, `getCooldownsByDeposit`, `getCooldownsByUser` to fetch them with specific filters. getCooldowns.ts Copy const me = Keypair.generate().publicKey; // All cooldowns const cooldowns = rlp.getCooldowns(); // Cooldowns of specific deposit, filter by ID. const depositId = new BN(0); const depositCooldown = rlp.getCooldownsByDeposit(depositId); // Fetch by user address const myCooldowns = rlp.getCooldownsByDeposit(me); ### [​](https://docs.reflect.money/api-reference/restaking#pdas) PDAs The `Restaking` class exposes multiple methods starting with `derive` prefix, allowing to derive different PDAs used within Reflect restaking program. derivePdas.ts Copy // Derive settings const settings = rlp.deriveSettings(); // Derive admin const me = Keypair.generate().publicKey; const admin = rlp.deriveAdmin(me); // Derive asset const USDC = new PublicKey(""); const asset = rlp.deriveAsset(USDC); // Derive lockup const lockupId = new BN(0); const lockup = rlp.deriveLockup(lockupId); // ... ### [​](https://docs.reflect.money/api-reference/restaking#restaking) Restaking The SDK exposes two methods for managing assets within the RLP - `restake()` and `withdraw()`. To use them, first initialize the RLP using the script above. Then, use the following snippet: restake.ts Copy import { RLP } from "@reflectmoney/restaking" import { Connection } from "@solana/web3.js" const connection = new Connection("https://api.mainnet-beta.solana.com"); const rlp = new RLP(connection); const signer = Keypair.generate(); const amount = new BN(1000 * Math.pow(10, 6)); const lockupId = new BN(0); const ix = rlp.restake(signer.publicKey, amount, lockupId); CreateUSDJ RedeemUSDJ Copy const connection = new Connection("https://api.mainnet-beta.solana.com"); const jlpStrategy = new JlpStrategy(connection); const user = Keypair.generate(); const AMOUNT = new BN(1000 * Math.pow(10, 6)); const ix = await jlpStrategy.mint( user.publicKey, AMOUNT ); const { blockhash } = await connection.getLatestBlockhash(); const { value: lookupTable } = await connection.getAddressLookupTable( jlpStrategy.lookupTable ); const message = new TransactionMessage({ instructions: ix, payerKey: user.publicKey, recentBlockhash: blockhash }).compileToV0Message([lookupTable]); const transaction = new VersionedTransaction(message); // Transaction signature and landing logic, adjust for your needs. transaction.sign([user]); await connection.sendRawTransaction(transaction.serialize()); ### [​](https://docs.reflect.money/api-reference/restaking#start-earning%2C-claim-appreciation-w%2Ftypescript) Start earning, claim appreciation w/Typescript These features are not yet available until [Reflect.Money](http://reflect.money/) is out of public-beta. Thank you for your patience. We will announce these features through [X.com/ReflectMoney](https://x.com/reflectmoney) [Stablecoin SDK](https://docs.reflect.money/api-reference/stablecoin) [Whitelabel SDK](https://docs.reflect.money/api-reference/proxy) ⌘I --- # Stablecoin SDK - Reflect Money [Skip to main content](https://docs.reflect.money/api-reference/stablecoin#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Developer Kits Stablecoin SDK [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Installation](https://docs.reflect.money/api-reference/stablecoin#installation) * [Core](https://docs.reflect.money/api-reference/stablecoin#core) * [Stablecoins](https://docs.reflect.money/api-reference/stablecoin#stablecoins) * [Creating and redeeming Reflect stablecoins with TypeScript](https://docs.reflect.money/api-reference/stablecoin#creating-and-redeeming-reflect-stablecoins-with-typescript) * [Yield distribution of the stablecoin](https://docs.reflect.money/api-reference/stablecoin#yield-distribution-of-the-stablecoin) * [Reflect Tokenized Bond](https://docs.reflect.money/api-reference/stablecoin#reflect-tokenized-bond) * [Usage](https://docs.reflect.money/api-reference/stablecoin#usage) ![Docs Stablets Image Pn](https://github.com/palindrome-eng/docs/blob/main/images/docs-stablets-image.png?raw=true) ### [​](https://docs.reflect.money/api-reference/stablecoin#installation) Installation To install Reflect Stablecoin SDK within your development environment, run the following command: yarn npm pnpm Copy yarn add @reflectmoney/stable.ts ### [​](https://docs.reflect.money/api-reference/stablecoin#core) Core The SDK exposes three core modules: * `Reflect`, a general-purpose class for protocol setup and interactions with base functionalities. * `ReflectKeeper`, a class exposing keeper-level functions necessary for maintenance and risk management. The majority of these functionalities require authentication at the protocol level. * `PdaClient`, a class exposing functions for derivation of PDAs storing state within the Reflect Protocol. ### [​](https://docs.reflect.money/api-reference/stablecoin#stablecoins) Stablecoins In most cases, usage of the three classes above will not be necessary for simple integrations and usage of Reflect stablecoins. For every stablecoin, the SDK exposes a separate class equipped with functions for minting, redemption, and administrative features. All these classes follow the schema of the `Stablecoin` superclass. Stablecoin.ts Copy abstract class Stablecoin { // Internal index used for derivation. public index: number; // Name of the strategy. public name: string; // RPC connection class. public connection: Connection; // Public key of the controller account. public controller: PublicKey; // List of collateral assets allowed for deposits. public collaterals: Collateral[]; // Mint of the stablecoin. public stablecoinMint: PublicKey; // Pyth client used for pricing data. public pythClient: HermesClient; // Drift client, only required for Drift-powered strategies. public driftClient?: DriftClient; // Generate user's token accounts if minting for the first time. abstract initializeTokenAccounts(owner: PublicKey, mints: PublicKey[], signer: PublicKey): Promise; // Mint a stablecoin to user's wallet. abstract mint(signer: PublicKey, amount: BN | number, minimumReceived: BN | number, ...args: any[]): Promise; // Redeem a stablecoin into underlying collateral. abstract redeem(signer: PublicKey, amount: BN | number, minimumReceived: BN | number, ...args: any[]): Promise; // Rebalance the strategy internal balances. Currently permissioned, requiring authentication at the protocol level. abstract rebalance(signer: PublicKey): Promise; } Currently, the SDK exposes `Stablecoin` classes for all three Reflect stablecoins: * `UsdcPlusStablecoin`, for integration with USDC+ (Index 0) - Live * `UsdjStablecoin`, for integration with JLP Hedged (Index 1) - Coming soon * `LstStablecoin`, for integration with LST Delta-Neutral (Index 2) - Live ### [​](https://docs.reflect.money/api-reference/stablecoin#creating-and-redeeming-reflect-stablecoins-with-typescript) Creating and redeeming Reflect stablecoins with TypeScript Follow the scripts below to mint and redeem Reflect stablecoins. All `Stablecoin` subclasses expose methods following the same schema, so the code below works interchangeably with minor changes. mintUsdcPlus.ts redeemUsdcPlus.ts mintLst.ts Copy import { UsdcPlusStablecoin } from "@reflectmoney/stable.ts"; import { Connection, Keypair, TransactionMessage, VersionedTransaction } from "@solana/web3.js"; import BN from "bn.js"; const connection = new Connection("https://api.mainnet-beta.solana.com"); const stablecoin = new UsdcPlusStablecoin(connection); // Load controller data for the most up-to-date stablecoin setup. await stablecoin.load(connection); // Use an actual user's public key, read from wallet adapter or local environment. const user = Keypair.generate(); // $1000 USD const AMOUNT = new BN(1000 * Math.pow(10, 6)); const MIN_RECEIVED = new BN(999 * Math.pow(10, 6)); // 0.1% slippage protection const ix = await stablecoin.mint( user.publicKey, AMOUNT, MIN_RECEIVED ); const { blockhash } = await connection.getLatestBlockhash(); const { value: lookupTable } = await connection.getAddressLookupTable( stablecoin.lookupTable ); const message = new TransactionMessage({ instructions: ix, payerKey: user.publicKey, recentBlockhash: blockhash }).compileToV0Message([lookupTable]); const transaction = new VersionedTransaction(message); // Transaction signature and confirmation logic, adjust for your needs. transaction.sign([user]); await connection.sendRawTransaction(transaction.serialize()); [​](https://docs.reflect.money/api-reference/stablecoin#yield-distribution-of-the-stablecoin) Yield distribution of the stablecoin ------------------------------------------------------------------------------------------------------------------------------------- Depending on the selected stablecoin, yield is distributed in one of two ways: * Natively, via the base stablecoin appreciating in value * Through a “tokenized bond”, a yield-bearing receipt token obtained after depositing the base stablecoin in Reflect Tokenized Bonds program Currently, the USDC+ stablecoin is natively appreciating in value and does not require manual wrapping. All other stablecoins distribute their yield through the yield-bearing receipts. Yield-bearing receipts are based on the following flow: 1. Deposit the collateral into a yield-bearing strategy 2. Mint the base stablecoin 3. Wrap the base stablecoin into a yield-bearing receipt 4. Continuously mint more of the base stablecoin against the yield generated from the strategy to keep the price of the base stablecoin at $1 USD 5. Deposit stablecoins minted in the following steps to the yield distribution program As a result, the yield-bearing receipts appreciate in value over time, as the underlying pool of the base stablecoin grows, while the amount of receipt tokens stays the same. ### [​](https://docs.reflect.money/api-reference/stablecoin#reflect-tokenized-bond) Reflect Tokenized Bond The Reflect SDK exposes a `ReflectTokenizedBond` class. It is an interface for interacting with the tokenized bond program used for distribution of the yield generated by underlying collateral of the Reflect stablecoins. On a daily basis, Reflect protocol keepers monitor the yield generated by Reflect and move it into the yield distribution program. #### [​](https://docs.reflect.money/api-reference/stablecoin#usage) Usage To interact with the tokenized bond program, use the following snippets: deposit.ts withdraw.ts Copy import { ReflectTokenizedBond, UsdjStablecoin } from "@reflectmoney/stable.ts"; import { Connection, Keypair, TransactionMessage, VersionedTransaction } from "@solana/web3.js"; import BN from "bn.js"; const user = Keypair.generate(); const stablecoin = new UsdjStablecoin(connection); const reflectTokenizedBond = new ReflectTokenizedBond(connection); const AMOUNT = new BN(1000 * 1_000_000); const instruction = reflectTokenizedBond.deposit( user.publicKey, stablecoin.index, AMOUNT ); const { blockhash } = await connection.getLatestBlockhash(); const message = new TransactionMessage({ instructions: [instruction], payerKey: user.publicKey, recentBlockhash: blockhash }).compileToV0Message(); const transaction = new VersionedTransaction(message); // Transaction signature and confirmation logic, adjust for your needs. transaction.sign([user]); await connection.sendRawTransaction(transaction.serialize()); [Restaking SDK](https://docs.reflect.money/api-reference/restaking) ⌘I --- # Interest Rates & Distribution - Reflect Money [Skip to main content](https://docs.reflect.money/interestrates#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Protocol Overview Interest Rates & Distribution [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Distribution Mechanics](https://docs.reflect.money/interestrates#distribution-mechanics) ![docs-rates-image](https://github.com/palindrome-eng/docs/blob/main/images/docs-rates-image.png?raw=true) Simple Explanation of Reflect Interest Rates -------------------------------------------- > Reflect Money interest rates are calculated in real time by onchain programs and are based entirely on the productivity level of the chosen DeFi strategy. For example: _A lower-risk, lower-productivity strategy would be real-world asset rates, such as treasury aggregation, in which the percentage is calculated by the increase in price of the underlying assets._ > > The distribution method of the above model is based entirely around price appreciation, while other models may distribute cash as a method of returning yield to eligible users. [​](https://docs.reflect.money/interestrates#distribution-mechanics) Distribution Mechanics ---------------------------------------------------------------------------------------------- Yield or ‘interest rates’ are calculated and distributed as often as possible; wherever productivity can be captured, it will be captured. This is a permissionless process and happens entirely onchain. Price Appreciation ------------------ Some DeFi strategies simply pay out by increasing the receipt price over time to match the corresponding amount of assets within their collateral and/or rewards pool. _Similar to how LST(s) increase in value._ _More redeemable assets = higher receipt price._ Liquid Bonds ------------ Liquid bonds are simply tokens representing a pool of productive capital, such as USDJ+ or USDC+ in the case of Reflect Money. These Liquid Bonds benefit from Price Appreciation and the ability to unwrap and claim this appreciation in cash at any moment. Distribution User Flow ---------------------- Below you can visualise the ideal user flow for those who seek to go straight to capturing Interest Rates through strategic stablecoins.![Ideal User Flow Pn](https://github.com/palindrome-eng/docs/blob/main/images/ideal-user-flow.png?raw=true)_Switching from non-yield-bearing stablecoins to yield-bearing stablecoins is completely optional. Depending on your jurisdiction, you may want to seek legal counsel before opting to do so._ [Properties of Capital Efficient Stablecoins](https://docs.reflect.money/currencies) [Overview of Reflect(s) Risk.](https://docs.reflect.money/risk-management/notice) ⌘I --- # Get recent events - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/events/get-recent-events#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Events Get recent events [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get recent events cURL Copy curl --request GET \ --url https://prod.api.reflect.money/events/all/{limit} 200 500 Copy { "success": true, "events": [\ {}\ ] } GET / events / all / {limit} Try it Get recent events cURL Copy curl --request GET \ --url https://prod.api.reflect.money/events/all/{limit} 200 500 Copy { "success": true, "events": [\ {}\ ] } #### Path Parameters [​](https://docs.reflect.money/reflect-api/events/get-recent-events#parameter-limit) limit integer required Max events to return #### Response 200 application/json Events retrieved successfully [​](https://docs.reflect.money/reflect-api/events/get-recent-events#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/events/get-recent-events#response-events) events object\[\] required [Get historical TVL and volume data](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data) [Get events by signer](https://docs.reflect.money/reflect-api/events/get-events-by-signer) ⌘I --- # Get events by signer - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/events/get-events-by-signer#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Events Get events by signer [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get events by signer cURL Copy curl --request GET \ --url https://prod.api.reflect.money/events/{signer} 200 400 500 Copy { "success": true, "events": [\ {}\ ] } GET / events / {signer} Try it Get events by signer cURL Copy curl --request GET \ --url https://prod.api.reflect.money/events/{signer} 200 400 500 Copy { "success": true, "events": [\ {}\ ] } #### Path Parameters [​](https://docs.reflect.money/reflect-api/events/get-events-by-signer#parameter-signer) signer string required Signer Solana address #### Response 200 application/json Events retrieved successfully [​](https://docs.reflect.money/reflect-api/events/get-events-by-signer#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/events/get-events-by-signer#response-events) events object\[\] required [Get recent events](https://docs.reflect.money/reflect-api/events/get-recent-events) ⌘I --- # Generate mint transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Generate mint transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Generate mint transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/mint \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / mint Try it Generate mint transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/mint \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#body-amount) amount number required Amount to mint Example: `1000000` [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#body-recipient) recipient string required Recipient Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#body-integration-id) integrationId string required Integration ID Example: `"int_12345"` [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Mint transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction#response-data) data object required Show child attributes [Initialize user branded token account](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account) [Mint stablecoin and whitelabel in single transaction](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction) ⌘I --- # Get current exchange rate - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Get current exchange rate [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get current exchange rate cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/exchange-rate 200 400 500 Copy { "success": true, "data": { "integrationId": "int_12345", "underlyingStablecoin": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "rateToUnderlying": 1.02, "rateToUsd": 1, "timestamp": "2024-01-01T00:00:00.000Z" } } GET / integration / {id} / exchange-rate Try it Get current exchange rate cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/exchange-rate 200 400 500 Copy { "success": true, "data": { "integrationId": "int_12345", "underlyingStablecoin": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "rateToUnderlying": 1.02, "rateToUsd": 1, "timestamp": "2024-01-01T00:00:00.000Z" } } #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate#parameter-id) id string required Integration ID #### Response 200 application/json Exchange rate retrieved successfully [​](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate#response-data) data object required Show child attributes [Get historical integration statistics](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics) [Initialize integration vault](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault) ⌘I --- # Generate redemption transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Generate redemption transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Generate redemption transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/redeem \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "redeemer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / redeem Try it Generate redemption transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/redeem \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "redeemer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#body-amount) amount number required Amount to redeem Example: `1000000` [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#body-redeemer) redeemer string required Redeemer Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#body-integration-id) integrationId string required Integration ID Example: `"int_12345"` [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Redemption transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction#response-data) data object required Show child attributes [Mint stablecoin and whitelabel in single transaction](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction) [Redeem whitelabeled stablecoin in single transaction](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction) ⌘I --- # Get historical integration statistics - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Get historical integration statistics [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get historical integration statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/stats/historical \ --header 'Reflect-API-Key: ' 200 400 500 Copy { "success": true, "data": { "period": "30d", "historicalData": [\ {\ "date": "2024-01-01",\ "supply": 1000000000,\ "users": 1500,\ "principal": 950000000,\ "yield": 50000000\ }\ ] } } GET / integration / {id} / stats / historical Try it Get historical integration statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/stats/historical \ --header 'Reflect-API-Key: ' 200 400 500 Copy { "success": true, "data": { "period": "30d", "historicalData": [\ {\ "date": "2024-01-01",\ "supply": 1000000000,\ "users": 1500,\ "principal": 950000000,\ "yield": 50000000\ }\ ] } } #### Authorizations [​](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#authorization-reflect-api-key) Reflect-API-Key string header required API key for integrators to access integration-specific endpoints. #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#parameter-id) id string required Integration ID #### Query Parameters [​](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#parameter-period) period enum default:30d Time period for historical data Available options: `7d`, `30d`, `90d`, `1y` #### Response 200 application/json Historical integration statistics retrieved successfully [​](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics#response-data) data object required Show child attributes [Get integration statistics](https://docs.reflect.money/reflect-api/integration/get-integration-statistics) [Get current exchange rate](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate) ⌘I --- # Get integration statistics - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/get-integration-statistics#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Get integration statistics [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get integration statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/stats \ --header 'Reflect-API-Key: ' 200 400 500 Copy { "success": true, "data": { "totalSupply": 1000000000, "totalUsers": 1500, "totalPrincipal": 950000000, "totalYieldGenerated": 50000000, "historicalData": [\ {\ "date": "2024-01-01",\ "supply": 1000000000,\ "users": 1500,\ "principal": 950000000,\ "yield": 50000000\ }\ ] } } GET / integration / {id} / stats Try it Get integration statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/stats \ --header 'Reflect-API-Key: ' 200 400 500 Copy { "success": true, "data": { "totalSupply": 1000000000, "totalUsers": 1500, "totalPrincipal": 950000000, "totalYieldGenerated": 50000000, "historicalData": [\ {\ "date": "2024-01-01",\ "supply": 1000000000,\ "users": 1500,\ "principal": 950000000,\ "yield": 50000000\ }\ ] } } #### Authorizations [​](https://docs.reflect.money/reflect-api/integration/get-integration-statistics#authorization-reflect-api-key) Reflect-API-Key string header required API key for integrators to access integration-specific endpoints. #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/get-integration-statistics#parameter-id) id string required Integration ID #### Response 200 application/json Integration statistics retrieved successfully [​](https://docs.reflect.money/reflect-api/integration/get-integration-statistics#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/get-integration-statistics#response-data) data object required Show child attributes [Whitelist integration users](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users) [Get historical integration statistics](https://docs.reflect.money/reflect-api/integration/get-historical-integration-statistics) ⌘I --- # Get integration configuration - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/get-integration-configuration#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Get integration configuration [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get integration configuration cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/config 200 400 500 Copy { "success": true, "data": { "brandedMint": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "fee": 50, "principal": 1250000000, "integratorsCommission": 25000000, "authority": "3Nd1p6zFvDz4SqJ2T5BmJ4E5pM4ix3L1hXyX7dQf9PvR", "bump": 255 } } GET / integration / {id} / config Try it Get integration configuration cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{id}/config 200 400 500 Copy { "success": true, "data": { "brandedMint": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "fee": 50, "principal": 1250000000, "integratorsCommission": 25000000, "authority": "3Nd1p6zFvDz4SqJ2T5BmJ4E5pM4ix3L1hXyX7dQf9PvR", "bump": 255 } } #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/get-integration-configuration#parameter-id) id string required Integration ID #### Response 200 application/json Integration configuration retrieved successfully [​](https://docs.reflect.money/reflect-api/integration/get-integration-configuration#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/get-integration-configuration#response-data) data object required Show child attributes [Transfer mint authority](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority) [Update integration configuration](https://docs.reflect.money/reflect-api/integration/update-integration-configuration) ⌘I --- # Get integrations by authority - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Get integrations by authority [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get integrations by authority cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{authority}/integrations 200 400 500 Copy { "success": true, "data": [\ {\ "pubkey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "data": {\ "brandedMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",\ "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",\ "fee": 200,\ "principal": "1000000000",\ "integratorsCommission": "20000000",\ "authority": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "bump": 255\ }\ }\ ] } GET / integration / {authority} / integrations Try it Get integrations by authority cURL Copy curl --request GET \ --url https://prod.api.reflect.money/integration/{authority}/integrations 200 400 500 Copy { "success": true, "data": [\ {\ "pubkey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "data": {\ "brandedMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",\ "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",\ "fee": 200,\ "principal": "1000000000",\ "integratorsCommission": "20000000",\ "authority": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "bump": 255\ }\ }\ ] } #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority#parameter-authority) authority string required Authority Solana address #### Response 200 application/json Integrations retrieved successfully [​](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority#response-data) data object\[\] required Array of integrations associated with the authority Show child attributes [Update integration configuration](https://docs.reflect.money/reflect-api/integration/update-integration-configuration) [Whitelist integration users](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users) ⌘I --- # Initialize a stablecoin token - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Initialize a stablecoin token [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Initialize a stablecoin token cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-stablecoin \ --header 'Content-Type: application/json' \ --data '{ "metadata": { "name": "", "symbol": "", "description": "", "uri": "" }, "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "", "mint": "" } } POST / integration / initialize-stablecoin Try it Initialize a stablecoin token cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-stablecoin \ --header 'Content-Type: application/json' \ --data '{ "metadata": { "name": "", "symbol": "", "description": "", "uri": "" }, "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "", "mint": "" } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#body-metadata) metadata object required Show child attributes [​](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#body-signer) signer string required Signer's Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#body-fee-payer) feePayer string required Fee payer Solana address #### Response 200 application/json Token initialization transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#response-success) success boolean Example: `true` [​](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token#response-data) data object Show child attributes [Initialize an integration](https://docs.reflect.money/reflect-api/integration/initialize-an-integration) [Transfer mint authority](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority) ⌘I --- # Initialize an integration - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Initialize an integration [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Initialize an integration cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize \ --header 'Content-Type: application/json' \ --data '{ "signer": "", "authority": "", "stablecoin": 0, "feeBps": 5000, "brandedMint": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / initialize Try it Initialize an integration cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize \ --header 'Content-Type: application/json' \ --data '{ "signer": "", "authority": "", "stablecoin": 0, "feeBps": 5000, "brandedMint": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-signer) signer string required Initializer's Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-authority) authority string required Authority Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-stablecoin) stablecoin enum required Stablecoin index (0: USDC+) Available options: `0` [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-fee-bps) feeBps integer required Fee in basis points Required range: `0 <= x <= 10000` [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-branded-mint) brandedMint string required Branded token mint address [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#body-fee-payer) feePayer string required Fee payer Solana address #### Response 200 application/json Initialization transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/initialize-an-integration#response-data) data object required Show child attributes [Get realtime exchange rate for a stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin) [Initialize a stablecoin token](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token) ⌘I --- # Initialize integration vault - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Initialize integration vault [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Initialize integration vault cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-vault \ --header 'Content-Type: application/json' \ --data '{ "integrationId": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / initialize-vault Try it Initialize integration vault cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-vault \ --header 'Content-Type: application/json' \ --data '{ "integrationId": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#body-integration-id) integrationId string required Integration ID (proxy state address) [​](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#body-signer) signer string required Admin Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#body-fee-payer) feePayer string required Fee payer Solana address #### Response 200 application/json Initialize vault transaction generated [​](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault#response-data) data object required Show child attributes [Get current exchange rate](https://docs.reflect.money/reflect-api/integration/get-current-exchange-rate) [Initialize user branded token account](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account) ⌘I --- # Initialize user branded token account - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Initialize user branded token account [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Initialize user branded token account cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-user-account \ --header 'Content-Type: application/json' \ --data '{ "integrationId": "", "userAddress": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / initialize-user-account Try it Initialize user branded token account cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/initialize-user-account \ --header 'Content-Type: application/json' \ --data '{ "integrationId": "", "userAddress": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#body-integration-id) integrationId string required Integration ID (proxy state address) [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#body-user-address) userAddress string required User's Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#body-signer) signer string required Signer Solana address [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#body-fee-payer) feePayer string required Fee payer Solana address #### Response 200 application/json Initialize user account transaction generated [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/initialize-user-branded-token-account#response-data) data object required Show child attributes [Initialize integration vault](https://docs.reflect.money/reflect-api/integration/initialize-integration-vault) [Generate mint transaction](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction) ⌘I --- # Mint stablecoin and whitelabel in single transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Mint stablecoin and whitelabel in single transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Mint stablecoin and whitelabel in single transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/flow/mint \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / flow / mint Try it Mint stablecoin and whitelabel in single transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/flow/mint \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#body-amount) amount number required Amount to mint Example: `1000000` [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#body-recipient) recipient string required Recipient Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#body-integration-id) integrationId string required Integration ID (proxy state address) Example: `"int_12345"` [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Combined mint and whitelabel transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/mint-stablecoin-and-whitelabel-in-single-transaction#response-data) data object required Show child attributes [Generate mint transaction](https://docs.reflect.money/reflect-api/integration/generate-mint-transaction) [Generate redemption transaction](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction) ⌘I --- # Redeem whitelabeled stablecoin in single transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Redeem whitelabeled stablecoin in single transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Redeem whitelabeled stablecoin in single transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/flow/redeem \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / flow / redeem Try it Redeem whitelabeled stablecoin in single transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/flow/redeem \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "recipient": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#body-amount) amount number required Amount to redeem Example: `1000000` [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#body-recipient) recipient string required Recipient Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#body-integration-id) integrationId string required Integration ID (proxy state address) Example: `"int_12345"` [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Combined redeem and burn transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction#response-data) data object required Show child attributes [Generate redemption transaction](https://docs.reflect.money/reflect-api/integration/generate-redemption-transaction) [Generate claim transaction](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction) ⌘I --- # Transfer mint authority - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Transfer mint authority [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Transfer mint authority cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/transfer-authority \ --header 'Content-Type: application/json' \ --data '{ "brandedMint": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "" } } POST / integration / transfer-authority Try it Transfer mint authority cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/transfer-authority \ --header 'Content-Type: application/json' \ --data '{ "brandedMint": "", "signer": "", "feePayer": "" }' 200 400 500 Copy { "success": true, "data": { "transaction": "" } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#body-branded-mint) brandedMint string required Branded token mint address [​](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#body-signer) signer string required Current authority's Solana address [​](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#body-fee-payer) feePayer string required Fee payer Solana address #### Response 200 application/json Authority transfer transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#response-success) success boolean Example: `true` [​](https://docs.reflect.money/reflect-api/integration/transfer-mint-authority#response-data) data object Show child attributes [Initialize a stablecoin token](https://docs.reflect.money/reflect-api/integration/initialize-a-stablecoin-token) [Get integration configuration](https://docs.reflect.money/reflect-api/integration/get-integration-configuration) ⌘I --- # Health check - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/health/health-check#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Health Health check [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Health check cURL Copy curl --request GET \ --url https://prod.api.reflect.money/health 200 500 Copy { "success": true, "message": "API is running", "timestamp": "2024-01-01T00:00:00.000Z" } GET / health Try it Health check cURL Copy curl --request GET \ --url https://prod.api.reflect.money/health 200 500 Copy { "success": true, "message": "API is running", "timestamp": "2024-01-01T00:00:00.000Z" } #### Response 200 application/json API is operational [​](https://docs.reflect.money/reflect-api/health/health-check#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/health/health-check#response-message) message string required Example: `"API is running"` [​](https://docs.reflect.money/reflect-api/health/health-check#response-timestamp) timestamp string required Example: `"2024-01-01T00:00:00.000Z"` [Get available stablecoin types](https://docs.reflect.money/reflect-api/stablecoin/get-available-stablecoin-types) ⌘I --- # Update integration configuration - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Update integration configuration [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Update integration configuration cURL Copy curl --request PUT \ --url https://prod.api.reflect.money/integration/{id}/config \ --header 'Content-Type: application/json' \ --data '{ "permissions": [\ "mint",\ "redeem",\ "claim"\ ], "administrators": [\ {\ "publicKey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "permissionLevel": "superadmin"\ }\ ], "yieldBreakdownBps": { "integrator": 200, "user": 9800 }, "metadata": { "name": "", "symbol": "", "description": "", "logoUrl": "", "websiteUrl": "" } }' 200 400 500 Copy { "success": true, "data": { "brandedMint": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "fee": 50, "principal": 1250000000, "integratorsCommission": 25000000, "authority": "3Nd1p6zFvDz4SqJ2T5BmJ4E5pM4ix3L1hXyX7dQf9PvR", "bump": 255 } } PUT / integration / {id} / config Try it Update integration configuration cURL Copy curl --request PUT \ --url https://prod.api.reflect.money/integration/{id}/config \ --header 'Content-Type: application/json' \ --data '{ "permissions": [\ "mint",\ "redeem",\ "claim"\ ], "administrators": [\ {\ "publicKey": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",\ "permissionLevel": "superadmin"\ }\ ], "yieldBreakdownBps": { "integrator": 200, "user": 9800 }, "metadata": { "name": "", "symbol": "", "description": "", "logoUrl": "", "websiteUrl": "" } }' 200 400 500 Copy { "success": true, "data": { "brandedMint": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "stablecoinMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "fee": 50, "principal": 1250000000, "integratorsCommission": 25000000, "authority": "3Nd1p6zFvDz4SqJ2T5BmJ4E5pM4ix3L1hXyX7dQf9PvR", "bump": 255 } } #### Path Parameters [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#parameter-id) id string required Integration ID #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#body-permissions) permissions string\[\] List of permissions Example: ["mint", "redeem", "claim"] [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#body-administrators) administrators object\[\] Show child attributes [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#body-yield-breakdown-bps) yieldBreakdownBps object Yield breakdown in basis points (must sum to 10000) Show child attributes [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#body-metadata) metadata object Show child attributes #### Response 200 application/json Integration configuration updated successfully [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/update-integration-configuration#response-data) data object required Show child attributes [Get integration configuration](https://docs.reflect.money/reflect-api/integration/get-integration-configuration) [Get integrations by authority](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority) ⌘I --- # Whitelist integration users - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Whitelist integration users [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Whitelist integration users cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/whitelist \ --header 'Content-Type: application/json' \ --header 'Reflect-API-Key: ' \ --data '{ "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 401 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / whitelist Try it Whitelist integration users cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/whitelist \ --header 'Content-Type: application/json' \ --header 'Reflect-API-Key: ' \ --data '{ "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 401 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Authorizations [​](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#authorization-reflect-api-key) Reflect-API-Key string header required API key for integrators to access integration-specific endpoints. #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#body-signer) signer string required Signer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Whitelist transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/whitelist-integration-users#response-data) data object required Show child attributes [Get integrations by authority](https://docs.reflect.money/reflect-api/integration/get-integrations-by-authority) [Get integration statistics](https://docs.reflect.money/reflect-api/integration/get-integration-statistics) ⌘I --- # Generate burn transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Generate burn transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Generate burn transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/burn \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000, "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "minimumReceived": 999000, "collateralMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" }' 200 400 404 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / stablecoin / burn Try it Generate burn transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/burn \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000, "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "minimumReceived": 999000, "collateralMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" }' 200 400 404 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#body-stablecoin-index) stablecoinIndex enum required Stablecoin index (0: USDC+) Available options: `0` Example: `0` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#body-deposit-amount) depositAmount number required Amount to burn in smallest unit Example: `1000000` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#body-signer) signer string required User's Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#body-minimum-received) minimumReceived number Minimum amount to receive (slippage protection) Example: `999000` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#body-collateral-mint) collateralMint string Optional collateral mint address Example: `"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"` #### Response 200 application/json Burn transaction generated successfully [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction#response-data) data object required Show child attributes [Generate mint transaction](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction) [Get APY for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-all-stablecoins) ⌘I --- # Generate claim transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Integration Generate claim transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Generate claim transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/claim \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / integration / claim Try it Generate claim transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/integration/claim \ --header 'Content-Type: application/json' \ --data '{ "amount": 1000000, "integrationId": "int_12345", "feePayer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM" }' 200 400 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#body-amount) amount number required Amount to claim Example: `1000000` [​](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#body-integration-id) integrationId string required Integration ID Example: `"int_12345"` [​](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#body-fee-payer) feePayer string required Fee payer Solana address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` #### Response 200 application/json Claim transaction generated successfully [​](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction#response-data) data object required Show child attributes [Redeem whitelabeled stablecoin in single transaction](https://docs.reflect.money/reflect-api/integration/redeem-whitelabeled-stablecoin-in-single-transaction) [Get protocol statistics](https://docs.reflect.money/reflect-api/stats/get-protocol-statistics) ⌘I --- # Generate mint transaction - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Generate mint transaction [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Generate mint transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/mint \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000, "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "minimumReceived": 999000, "collateralMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" }' 200 400 404 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } POST / stablecoin / mint Try it Generate mint transaction cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/mint \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000, "signer": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM", "minimumReceived": 999000, "collateralMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" }' 200 400 404 500 Copy { "success": true, "data": { "transaction": "AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAED..." } } #### Body application/json [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#body-stablecoin-index) stablecoinIndex enum required Stablecoin index (0: USDC+) Available options: `0` Example: `0` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#body-deposit-amount) depositAmount number required Amount to mint in smallest unit Example: `1000000` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#body-signer) signer string required User's Solana wallet address Example: `"9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM"` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#body-minimum-received) minimumReceived number Minimum amount to receive (slippage protection) Example: `999000` [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#body-collateral-mint) collateralMint string Optional collateral mint address Example: `"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"` #### Response 200 application/json Mint transaction generated successfully [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction#response-data) data object required Show child attributes [Get quote for mint or redeem](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem) [Generate burn transaction](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction) ⌘I --- # Get APY for all stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-all-stablecoins#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get APY for all stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get APY for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/apy 200 404 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "apy": 5.25,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } GET / stablecoin / apy Try it Get APY for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/apy 200 404 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "apy": 5.25,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } #### Response 200 application/json Successfully retrieved APY data for all stablecoins [​](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-all-stablecoins#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-all-stablecoins#response-data) data object\[\] required Array of stablecoin APY data Show child attributes [Generate burn transaction](https://docs.reflect.money/reflect-api/stablecoin/generate-burn-transaction) [Get latest exchange rates for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-latest-exchange-rates-for-all-stablecoins) ⌘I --- # Get available stablecoin types - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-available-stablecoin-types#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get available stablecoin types [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get available stablecoin types cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/types 200 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "name": "USDC+"\ }\ ] } GET / stablecoin / types Try it Get available stablecoin types cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/types 200 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "name": "USDC+"\ }\ ] } #### Response 200 application/json Available stablecoin types retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-available-stablecoin-types#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-available-stablecoin-types#response-data) data object\[\] required Show child attributes Example: [{ "index": 0, "name": "USDC+" }] [Health check](https://docs.reflect.money/reflect-api/health/health-check) [Get supply cap information for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-supply-cap-information-for-all-stablecoins) ⌘I --- # Get APY for specific stablecoin - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get APY for specific stablecoin [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get APY for specific stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/apy 200 400 404 500 Copy { "success": true, "data": { "index": 0, "apy": 5.25, "timestamp": "2023-11-07T05:31:56Z" } } GET / stablecoin / {index} / apy Try it Get APY for specific stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/apy 200 400 404 500 Copy { "success": true, "data": { "index": 0, "apy": 5.25, "timestamp": "2023-11-07T05:31:56Z" } } #### Path Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin#parameter-index) index enum required Stablecoin index (0: USDC+) Available options: `0` #### Response 200 application/json Successfully retrieved APY data [​](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin#response-data) data object required Show child attributes [Get historical exchange rates for a stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin) [Get historical APY data for specific stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin) ⌘I --- # Get quote for mint or redeem - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get quote for mint or redeem [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get quote for mint or redeem cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/quote/{type} \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000 }' 200 400 404 500 Copy { "success": true, "data": 999000 } POST / stablecoin / quote / {type} Try it Get quote for mint or redeem cURL Copy curl --request POST \ --url https://prod.api.reflect.money/stablecoin/quote/{type} \ --header 'Content-Type: application/json' \ --data '{ "stablecoinIndex": 0, "depositAmount": 1000000 }' 200 400 404 500 Copy { "success": true, "data": 999000 } #### Path Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#parameter-type) type enum required Quote type Available options: `mint`, `redeem` #### Body application/json [​](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#body-stablecoin-index) stablecoinIndex enum required Stablecoin index (0: USDC+) Available options: `0` Example: `0` [​](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#body-deposit-amount) depositAmount number required Amount to quote Example: `1000000` #### Response 200 application/json Quote retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem#response-data) data number required Quote amount Example: `999000` [Get supply cap information for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-supply-cap-information-for-all-stablecoins) [Generate mint transaction](https://docs.reflect.money/reflect-api/stablecoin/generate-mint-transaction) ⌘I --- # Get historical exchange rates for a stablecoin - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get historical exchange rates for a stablecoin [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get historical exchange rates for a stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/exchange-rates/historical 200 400 404 500 Copy { "success": true, "data": [\ {\ "id": 123,\ "stablecoin": 0,\ "base_usd_value_bps": 123,\ "receipt_usd_value_bps": 123,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } GET / stablecoin / exchange-rates / historical Try it Get historical exchange rates for a stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/exchange-rates/historical 200 400 404 500 Copy { "success": true, "data": [\ {\ "id": 123,\ "stablecoin": 0,\ "base_usd_value_bps": 123,\ "receipt_usd_value_bps": 123,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } #### Query Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin#parameter-stablecoin) stablecoin enum required Stablecoin index (0: USDC+) Available options: `0` [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin#parameter-days) days integer default:365 Number of days for historical data (default: 365) Required range: `x >= 1` #### Response 200 application/json Historical exchange rates retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin#response-data) data object\[\] required Show child attributes [Get latest exchange rates for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-latest-exchange-rates-for-all-stablecoins) [Get APY for specific stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin) ⌘I --- # Get latest exchange rates for all stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-latest-exchange-rates-for-all-stablecoins#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get latest exchange rates for all stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get latest exchange rates for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/exchange-rates 200 500 Copy { "success": true, "data": [\ {\ "id": 123,\ "stablecoin": 0,\ "base_usd_value_bps": 123,\ "receipt_usd_value_bps": 123,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } GET / stablecoin / exchange-rates Try it Get latest exchange rates for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/exchange-rates 200 500 Copy { "success": true, "data": [\ {\ "id": 123,\ "stablecoin": 0,\ "base_usd_value_bps": 123,\ "receipt_usd_value_bps": 123,\ "timestamp": "2023-11-07T05:31:56Z"\ }\ ] } #### Response 200 application/json Latest exchange rates for all stablecoins retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-latest-exchange-rates-for-all-stablecoins#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-latest-exchange-rates-for-all-stablecoins#response-data) data object\[\] required Show child attributes [Get APY for all stablecoins](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-all-stablecoins) [Get historical exchange rates for a stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-historical-exchange-rates-for-a-stablecoin) ⌘I --- # Get historical APY data for specific stablecoin - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get historical APY data for specific stablecoin [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get historical APY data for specific stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/apy/historical 200 400 500 Copy { "success": true, "data": { "index": 0, "apy": 5.25, "timestamp": "2023-11-07T05:31:56Z" } } GET / stablecoin / {index} / apy / historical Try it Get historical APY data for specific stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/apy/historical 200 400 500 Copy { "success": true, "data": { "index": 0, "apy": 5.25, "timestamp": "2023-11-07T05:31:56Z" } } #### Path Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin#parameter-index) index enum required Stablecoin index (0: USDC+) Available options: `0` #### Query Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin#parameter-days) days integer default:365 Number of days for historical data (default: 365) Required range: `x >= 1` #### Response 200 application/json Successfully retrieved historical APY data [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin#response-success) success boolean required Whether the request was successful [​](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin#response-data) data object required Show child attributes [Get APY for specific stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-apy-for-specific-stablecoin) [Get realtime exchange rate for a stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin) ⌘I --- # Get realtime exchange rate for a stablecoin - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get realtime exchange rate for a stablecoin [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get realtime exchange rate for a stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/exchange-rate 200 400 500 Copy { "success": true, "data": {} } GET / stablecoin / {index} / exchange-rate Try it Get realtime exchange rate for a stablecoin cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/{index}/exchange-rate 200 400 500 Copy { "success": true, "data": {} } #### Path Parameters [​](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin#parameter-index) index enum required Stablecoin index (0: USDC+) Available options: `0` #### Response 200 application/json Realtime exchange rate retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-realtime-exchange-rate-for-a-stablecoin#response-data) data object required [Get historical APY data for specific stablecoin](https://docs.reflect.money/reflect-api/stablecoin/get-historical-apy-data-for-specific-stablecoin) [Initialize an integration](https://docs.reflect.money/reflect-api/integration/initialize-an-integration) ⌘I --- # Get supply cap information for all stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stablecoin/get-supply-cap-information-for-all-stablecoins#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stablecoin Get supply cap information for all stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get supply cap information for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/limits 200 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "supplyCap": 1000000000,\ "currentSupply": 500000000,\ "remainingCapacity": 500000000,\ "utilizationPercentage": 50\ }\ ] } GET / stablecoin / limits Try it Get supply cap information for all stablecoins cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stablecoin/limits 200 500 Copy { "success": true, "data": [\ {\ "index": 0,\ "supplyCap": 1000000000,\ "currentSupply": 500000000,\ "remainingCapacity": 500000000,\ "utilizationPercentage": 50\ }\ ] } #### Response 200 application/json Supply cap information retrieved successfully [​](https://docs.reflect.money/reflect-api/stablecoin/get-supply-cap-information-for-all-stablecoins#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stablecoin/get-supply-cap-information-for-all-stablecoins#response-data) data object\[\] required Show child attributes Example: [ { "index": 0, "supplyCap": 1000000000, "currentSupply": 500000000, "remainingCapacity": 500000000, "utilizationPercentage": 50 }] [Get available stablecoin types](https://docs.reflect.money/reflect-api/stablecoin/get-available-stablecoin-types) [Get quote for mint or redeem](https://docs.reflect.money/reflect-api/stablecoin/get-quote-for-mint-or-redeem) ⌘I --- # Code Security Audit(s) - Reflect Money [Skip to main content](https://docs.reflect.money/risk-management/codeaudits#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... Ctrl K Search... Navigation Risk Management Code Security Audit(s) [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) ![Docs Audits Image Pn](https://mintcdn.com/palindromeengineering/XuIPjyk1xAmWLm_h/images/docs-audits-image.png?w=2500&fit=max&auto=format&n=XuIPjyk1xAmWLm_h&q=85&s=ab41551f7cdd700aa73eddff26bb652e) * 09/2025 - Offside Labs This audit is currently being finalised and is due to be updated here in the near future, _**please check back later for the full report.**_ [Overview of Reflect(s) Risk.](https://docs.reflect.money/risk-management/notice) [Cross-Margin Rate Farming](https://docs.reflect.money/strategies/USDC) Ctrl+I Assistant Responses are generated using AI and may contain mistakes. --- # Overview of Reflect(s) Risk. - Reflect Money [Skip to main content](https://docs.reflect.money/risk-management/notice#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Risk Management Overview of Reflect(s) Risk. [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [Types of risk facing digital financial products.](https://docs.reflect.money/risk-management/notice#types-of-risk-facing-digital-financial-products) * [Key knowledge for understanding the reflect risk framework.](https://docs.reflect.money/risk-management/notice#key-knowledge-for-understanding-the-reflect-risk-framework) * [Active risk prevention through consensus based insurance](https://docs.reflect.money/risk-management/notice#active-risk-prevention-through-consensus-based-insurance) ![Risk Page Pn](https://github.com/palindrome-eng/docs/blob/main/images/docs-risk-image.png?raw=true) ### [​](https://docs.reflect.money/risk-management/notice#types-of-risk-facing-digital-financial-products) Types of risk facing digital financial products. _Be Aware | When utilizing financial primitives online, it is paramount to be comfortable with personal management of operational and economic security and understand all of the risks associated with such a product. If you are unsure or uncertain in any way in how to approach reflect assets then please consult with your financial advisor._ Smart Contract Risk ------------------- the public & permissionless nature of smart contracts means they are often targets of cyber theft. This is an inherent risk when depositing funds on a public blockchain._**Prevention of Risk:**_ Code & Economic Audits_**Elimination of Risk:**_ Global Insurance Exchange Risk ------------- Reflect utilizes on-chain DEX’s to enable some of its strategy backed products to be capitally efficient, this means onboarding all of the risks associated with these exchanges. _**Prevention of Risk:**_ Use of Insured DEXs_**Elimination of Risk:**_ Global Insurance Interest Rate Risk ------------------ Although reflect(s) insurance systems cover 100% all of principal deposits the rates provided by each strategy are not guaranteed and have their own inherent risks such as money market fund rate changes, funding rate swings etc._**Prevention of Risk:**_ Economic Strategy Audits_**Elimination of Risk:**_ Fallbacks in Strategies Collateral Risk --------------- Reflect utilises assets issued on-chain as collateral for its strategies and therefore inherents risks associated with centralised and decentralised issuers of tokens. _**Prevention of Risk:**_ Asset Classification_**Elimination of Risk:**_ Limitation to S Tier ### [​](https://docs.reflect.money/risk-management/notice#key-knowledge-for-understanding-the-reflect-risk-framework) Key knowledge for understanding the reflect risk framework. The reflect risk framework is a **four-step solution** for ensuring S-Tier collateral assets issued on-chain can be deployed to the most secure and effective financial strategy while simulteanously being tokenised as stablecoins through intermediation. Asset Classification _A systematic approach to defining the validity of an asset for use as collateral in reflect(s) issuing strategies._ more information on asset classification Reflect utilises a stringent classification process for assets issued on public ledgers whereby the classification rating will correspond to how safe and or valid a specific token is for use as collateral within one of our strategies. Typically this classification involves scoring liquidity provisions, issuer reliability and legality, how available this asset is across exchanges and networks and more. The classification system utilises ratings **from A to E** whereby the higher index of alphabetical letters is a lower rating. For assets to achieve classification under the Reflect guidelines they undergo a rigorous 14 day audit process. _At this time we do not accept requests to classify assets on behalf of others._ _The full list of classified assets is not currently available for public viewing and is expected to go live by Q4 2025._ Economic Security Audits (ESA) _Academic thesis driven simulation, backtesting and scrutiny of strategies implemented for the creation of new stablecoins._ more information on economic security audits Economic Security Audits (ESA)‘s are employed by Reflect in order to ensure that financial strategy designed by its teams are not only sound, secure and scalable but also function as expected in extrenuous scenarios or “black swan” events. Reflect undergoes these audits via the use of third-party organisations specializing in the academic and financial verification of financial strategy.These audits are exclusive from a code-security audit and explicitly highlight the functionality, scalability, backtesting results and simulation outcomes of onchain financial strategy and are not inclusive of information pertaining to the security of code operating said strategy. Code Security Audits (CSA) _Rigorous exploitation, penetration and security-practice audits from reputable third-party research vendors._ more information on code security audits Code Security Audits (CSA)s are employed by Reflect in order to ensure and verify its programs deployed to public ledgers follow industry-leading security practices and therefore can provide guarantees for deposits into financial strategies operated by Reflect.CSA’s follow a rigorous process of discovering vulnerabilities, potential exploits and work with the engineers to fix, nullify and defend against all types of attacks - These audits are carried out by third-party research organisations with expertise in the auditing of onchain financial code. _A full list of CSA’s pertaining to the programs of Reflect Money can be found on the page of its respective strategies. All reports are also available through the PalindromeEng github organisation._ Global Insurance _A first-in-industry autonomous insurance protocol powered by consensus networks and restaking pools._ more information on global insurance Reflect(s) Global Insurance is **akin to FSCS** offered on bank-accounts and acts as a native insurance layer to protect the principal deposits placed within its strategic stablecoins.It is designed to function like a universal liquidity pool for all assets that underly reflect based strategies, allowing for feeless rebalancing across strategies with no slippage, mev or vampiric loss. Liquidity is added to this pool via the use of Restaking, a network-security primitive that allows proof-of-stake assets to be reused in the validation of alternative services.Restaking is used to enable consensus based automation on Reflect Strategy Programs for example, when restaked nodes come to consensus that one strategy is missing X dollars, then we can automatically refill this deposit to ensure minimal collateral downtime. \_This system is up to 4000x more efficient than human operated strategy rebalancing. \_The claims process is entirely automated thanks to the above consensus system, meaning depositors and developers need not to worry about prinicpal deposits and can instead maximise their choice of strategy in return for yield. ### [​](https://docs.reflect.money/risk-management/notice#active-risk-prevention-through-consensus-based-insurance) Active risk prevention through consensus based insurance **Reflect Money actively prevents risk events facing its collateral** via autonomous consensus - _this can otherwise be described as groups of authorized nodes who are operating a software-based data collection service_ that aids in identifying the moments an insurance claim is needed. Once these nodes agree that a claim is required they can automatically run this process on-chain, ensuring minimal collateral downtime and the smallest possible losses. _**Global Insurance (How it Works) -**_ Powered by Restaking -------------------- Reflect(s) Global Insurance pool is powered by Restaked Assets. Allowing users to secure their Layer-1 blockchain by staking & earn real-time cash income by securing stablecoins. Automated by Consensus ---------------------- To maximise transparency and minimise insurance pool losses all claims are handled through consensus nodes with access to all data relevant to Reflect strategies. Attestations in Real Time ------------------------- Insurance nodes post public attestations every 450 miliseconds of all data they have collected and the calculated risk score and claims status. This allows for developers and users to model risk in realtime. [Interest Rates & Distribution](https://docs.reflect.money/interestrates) [Code Security Audit(s)](https://docs.reflect.money/risk-management/codeaudits) ⌘I --- # Introduction to Capital Efficient Stablecoins - Reflect Money [Skip to main content](https://docs.reflect.money/#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... Ctrl K Search... Navigation Protocol Overview Introduction to Capital Efficient Stablecoins [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [What is Reflect Money?](https://docs.reflect.money/#what-is-reflect-money%3F) * [Core Components of Reflect Money](https://docs.reflect.money/#core-components-of-reflect-money) ![docs-home-image](https://github.com/palindrome-eng/docs/blob/main/images/docs-home-image.png?raw=true) Welcome to Reflect.Money Documentation -------------------------------------- You’re here to learn about **Reflect Money** and how it allows for the tokenization of onchain DeFi strategy in the form of US Dollars. Let’s start with some basic information below. [​](https://docs.reflect.money/#what-is-reflect-money%3F) What is Reflect Money? ----------------------------------------------------------------------------------- Reflect is credibly-neutral stablecoin software, where the software consists of insured, decentralized financial strategies executed and managed permissionlessly by programs rather than humans. Reflect then **tokenizes these strategies** in the form of interest-bearing US Dollars (stablecoins). Get a Deeper Understanding A more technical shortform explanation for what Reflect Money is. Reflect Money is Spinal-Level Financial Infrastructure for onchain capital efficiency through permissionless and programmable intermediation—its systems enable users and developers to capture the productivity of any onchain monetary expanse seamlessly without dealing with centralized parties, human-operated risk management, etc.Financial intermediation in the blockchain industry has traditionally been centralized, operated by closed-source, human-reliant systems that don’t scale to meet the growing monetary expansion of onchain environments such as DeFi. This has led to massive capital inefficiency and significant segmentation of available capital. Reflect solves this through transparent, strategic money that anyone can issue and redeem, **backed entirely by onchain DeFi strategy.** ### [​](https://docs.reflect.money/#core-components-of-reflect-money) Core Components of Reflect Money Reflect Money _comprises three foundational-level systems, which are described below:_ Tokenization ------------ Tokenization refers to the act of representing something (an object, financial product, or fungible asset) on a public blockchain as a ‘token’ that is tradable and transferable among accounts. In the case of Reflect, it is tokenizing deposits in its strategies. Decentralized Financial Strategy -------------------------------- Financial strategies such as _lending, asset diversification, basis trades, money markets_ and more can all be taken advantage of onchain today at the cost of opportunity, i.e., your deposit mostly stays with the program in which you deposit. Reflect builds programs to match the most effective onchain financial strategies where your deposit is tokenized in stablecoin format, resulting in zero opportunity cost. Verifiable Insurance -------------------- Every tokenized DeFi strategy (stablecoin) issued by Reflect Programs is coupled with its own unique insurance program, which allows for the automation of insurance claims through verifiable consensus on attestations. It achieves this through the use of zk and restaking for economic security and capitalization. [Properties of Capital Efficient Stablecoins](https://docs.reflect.money/currencies) Ctrl+I Assistant Responses are generated using AI and may contain mistakes. --- # Cross-Margin Rate Farming - Reflect Money [Skip to main content](https://docs.reflect.money/strategies/USDC#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... Ctrl K Search... Navigation Strategy Breakdowns Cross-Margin Rate Farming [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) On this page * [The Efficiency Strategy for Money Markets](https://docs.reflect.money/strategies/USDC#the-efficiency-strategy-for-money-markets) * [Operational Strategy](https://docs.reflect.money/strategies/USDC#operational-strategy) * [Strategic Value Propositions](https://docs.reflect.money/strategies/USDC#strategic-value-propositions) * [Risk Modeling Cross-Margin Strategies](https://docs.reflect.money/strategies/USDC#risk-modeling-cross-margin-strategies) ![Docs Margin Image Pn](https://github.com/palindrome-eng/docs/blob/main/images/docs-margin-image.png?raw=true) ### [​](https://docs.reflect.money/strategies/USDC#the-efficiency-strategy-for-money-markets) The Efficiency Strategy for Money Markets United States Dollar Coin Plus (_**USDC+**_) is an optimally efficient version of the [USDC](https://coinmarketcap.com/currencies/usd-coin/) stablecoin provided by [Circle (CRCL)](https://docs.reflect.money/strategies/circle.com) a publicly traded US company. It produces efficiency and interest-rates through a lender/borrower based strategy. Reflect Money is a [_Member of the Circle Alliance_](https://partners.circle.com/partner/reflect-money) - a program by Circle to combine the best operators who wish to scale the use of its digital cash. _Please be aware that Reflect Money and its USDC+ stablecoin are not affiliated with or endorsed by Circle Inc and are entirely seperate entities._ ### [​](https://docs.reflect.money/strategies/USDC#operational-strategy) Operational Strategy _Here you will find a description of the financial intermediation strategy utilised by onchain programs in order to maximise the interest-rate of its USDC collateral._ **The Capital Supplier Methodology** The Capital Supplier strategy is one of the simplest and safest interest-rate generating strategies available on public ledger networks as it utilises highly-liquid cash assets to farm interest-rates on overcollateralised lending/margin pools. 1 USDC is Deposited. _USDC is sent by users or developers to the distributor program, which acts as a non-custodial pool for all collateral assets._ 2 Distributor Calculates Rates _The distributor program calcultes the best interest-rates at X size for USDC on the network and marks what venues can host up to how much liquidity._ 3 USDC is Distributed _The program then distributes this USDC immediately in order to capture interest-rates from leverage markets or borrow/lend pools._ 4 USDC+ is Issued _Depositors receive USDC+ equivalent to their share in the pool i.e. 1 USDC can equal 0.975 USDC+ similar to liquid staked tokens._ 5 USDC+ collateral grows _The value of USDC+ in USDC grows and appreciation in this can be claimed by unwrapping the USDC+ token to its native form._ ### [​](https://docs.reflect.money/strategies/USDC#strategic-value-propositions) Strategic Value Propositions USDC+ is designed to provide a familiar, safe and low risk-tolerance yield-bearing asset for use within financial applications requiring interest-rates on its stablecoin balances. _More information about its primary value propositons can be found below._ Reduction in Margin Costs ------------------------- By providing USDC to all prominent lending venues Reflect is lowering the cost of margin for cash which encourages more volume. Prevent Impermanent Loss ------------------------ By adding a native interest rate to SVMs largest liquidity pair token you can reduce impermanent loss faced on one side of the pool. Increase in Available Margin ---------------------------- Reflect provides cash-capital to money markets over a longer time-horizon and therefore increases the available size of lending for these markets. Earn During Settlement ---------------------- USDC is a payments-powerhouse but lacks the ability to be intermediated during payment-settlement periods. USDC+ enables low-risk value capture on this period. ### [​](https://docs.reflect.money/strategies/USDC#risk-modeling-cross-margin-strategies) Risk Modeling Cross-Margin Strategies _Integrators should understand the composite risk profile when deploying USDC+ within their applications, as the strategy inherits risks from all underlying lending venues._ **Primary Risk Considerations** Since USDC+ distributes capital across multiple borrow/lend markets, the risk profile combines individual protocol exposures with cross-margin strategy considerations: Protocol Security Risk ---------------------- Each lending venue carries distinct smart contract risks, audit histories, and security track records that compound across the strategy. Liquidity & LTV Variance ------------------------ Different protocols maintain varying Loan-to-Value ratios and withdrawal capacities that may affect liquidity during market stress. **Key Risk Factors for Integration:** * **Multi-venue exposure**: Smart contract risks compound across all active lending protocols * **Liquidity constraints**: Withdrawal capacity dependent on utilization rates across venues * **Yield volatility**: Interest rates fluctuate based on market conditions and cross-venue competition * **Venue concentration**: Capital allocation methodology may create dependencies on specific protocols Integrators should treat USDC+ as a higher-risk asset compared to native USDC and implement appropriate user disclosures regarding multi-venue exposure and inherited protocol risks. [Code Security Audit(s)](https://docs.reflect.money/risk-management/codeaudits) Ctrl+I Assistant Responses are generated using AI and may contain mistakes. --- # Get historical TVL and volume data - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stats Get historical TVL and volume data [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get historical TVL and volume data cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stats/historical 200 500 Copy { "success": true, "data": { "tvl": [\ {\ "timestamp": "2024-01-01T12:00:00.000Z",\ "tvl": 50000000\ }\ ], "volume": [\ {\ "date": "2024-01-01",\ "volume": "1000000000000",\ "cumulativeVolume": "50000000000000"\ }\ ] } } GET / stats / historical Try it Get historical TVL and volume data cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stats/historical 200 500 Copy { "success": true, "data": { "tvl": [\ {\ "timestamp": "2024-01-01T12:00:00.000Z",\ "tvl": 50000000\ }\ ], "volume": [\ {\ "date": "2024-01-01",\ "volume": "1000000000000",\ "cumulativeVolume": "50000000000000"\ }\ ] } } #### Query Parameters [​](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data#parameter-period) period integer default:7 Number of days of historical data to retrieve (default: 7) Required range: `x >= 1` Example: `7` #### Response 200 application/json Historical data retrieved successfully [​](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data#response-data) data object required Show child attributes [Get protocol statistics](https://docs.reflect.money/reflect-api/stats/get-protocol-statistics) [Get recent events](https://docs.reflect.money/reflect-api/events/get-recent-events) ⌘I --- # Get protocol statistics - Reflect Money [Skip to main content](https://docs.reflect.money/reflect-api/stats/get-protocol-statistics#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Stats Get protocol statistics [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) Get protocol statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stats 200 500 Copy { "success": true, "data": { "users": 1250, "supply": "50000000000000", "cumulativeVolume": "100000000000000", "tvl": 50000000, "totalYieldDistributed": 2500000 } } GET / stats Try it Get protocol statistics cURL Copy curl --request GET \ --url https://prod.api.reflect.money/stats 200 500 Copy { "success": true, "data": { "users": 1250, "supply": "50000000000000", "cumulativeVolume": "100000000000000", "tvl": 50000000, "totalYieldDistributed": 2500000 } } #### Response 200 application/json Protocol statistics retrieved successfully [​](https://docs.reflect.money/reflect-api/stats/get-protocol-statistics#response-success) success boolean required Example: `true` [​](https://docs.reflect.money/reflect-api/stats/get-protocol-statistics#response-data) data object required Show child attributes [Generate claim transaction](https://docs.reflect.money/reflect-api/integration/generate-claim-transaction) [Get historical TVL and volume data](https://docs.reflect.money/reflect-api/stats/get-historical-tvl-and-volume-data) ⌘I --- # Page Not Found [Skip to main content](https://docs.reflect.money/strategies/circle.com#content-area) [Reflect Money home page![light logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-whitebg.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=5b13d2487eb66145c04abb111ddf5fbc)![dark logo](https://mintcdn.com/palindromeengineering/RL3ctOyC17tLi0Jh/logo/logo-light.svg?fit=max&auto=format&n=RL3ctOyC17tLi0Jh&q=85&s=a6deb991679abcf6acee910c659838a3)](https://docs.reflect.money/) Search... ⌘K Search... Navigation Page Not Found [Documentation](https://docs.reflect.money/introduction) [Integrating Reflect](https://docs.reflect.money/api-reference/stablecoin) [Reflect API](https://docs.reflect.money/reflect-api/health/health-check) 404 Page Not Found ============== We couldn't find the page. ⌘I ---