Cauldron/docs/cauldron/usecases/index.html
bch_qp3hvzy09lzcm46qm4cd 66e0acc0be snapshot: docs.riftenlabs.com/cauldron/ (28 pages) - author: Riften Labs
Backup of Cauldron docs at snapshot time. Canonical source of truth:
  https://docs.riftenlabs.com/cauldron/

Includes: whitepaper, liquidity/swap/yield/wallets, developer resources,
knowledge base, and the full API section (bcmr, broadcast, cauldron,
contract-subscribe, ido, moria_v11, oracle, root, tokenbch, tokentoken).
Supporting CSS/JS bundle preserved so pages render offline.
2026-09-02 04:05:04 +02:00

3290 lines
No EOL
49 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="Documentation for Riften Labs products">
<meta name="author" content="Riften Labs">
<link rel="canonical" href="https://docs.riftenlabs.com/cauldron/usecases/">
<link rel="prev" href="../swap/">
<link rel="next" href="../wallets/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.7">
<title>Other Use Cases - Riften Labs Documentation</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.ec1eaa64.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.ab4e12ef.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<link rel="stylesheet" href="../../stylesheets/custom.css">
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
</head>
<body dir="ltr" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="indigo">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#other-use-cases" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header md-header--shadow" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="Riften Labs Documentation" class="md-header__button md-logo" aria-label="Riften Labs Documentation" data-md-component="logo">
<img src="https://static.wixstatic.com/media/ae85be_a9f280427dbf44b7bcc1a4bfb232c96f~mv2.png/v1/fill/w_30,h_30,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/Riften_Labs_Logo_Transparent_edited.png" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
Riften Labs Documentation
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Other Use Cases
</span>
</div>
</div>
</div>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
</nav>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="Riften Labs Documentation" class="md-nav__button md-logo" aria-label="Riften Labs Documentation" data-md-component="logo">
<img src="https://static.wixstatic.com/media/ae85be_a9f280427dbf44b7bcc1a4bfb232c96f~mv2.png/v1/fill/w_30,h_30,al_c,q_85,usm_0.66_1.00_0.01,enc_auto/Riften_Labs_Logo_Transparent_edited.png" alt="logo">
</a>
Riften Labs Documentation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
Riften Labs Documentation
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
<span class="md-ellipsis">
RiftenLabs
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
RiftenLabs
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../RiftenLabs/contributor-agreement/" class="md-nav__link">
<span class="md-ellipsis">
Riften Labs Contributor Agreement
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../RiftenLabs/media/" class="md-nav__link">
<span class="md-ellipsis">
Media
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../RiftenLabs/mediapack/" class="md-nav__link">
<span class="md-ellipsis">
Media Pack
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../RiftenLabs/opensource/" class="md-nav__link">
<span class="md-ellipsis">
Open Source
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" checked>
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<span class="md-ellipsis">
Cauldron
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Cauldron
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../" class="md-nav__link">
<span class="md-ellipsis">
Cauldron DEX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../aapy/" class="md-nav__link">
<span class="md-ellipsis">
Aggregated APY (AAPY)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../claim/" class="md-nav__link">
<span class="md-ellipsis">
Token Verification &amp; Token Claim
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../developer-resources/" class="md-nav__link">
<span class="md-ellipsis">
Developer Resources
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../liquidity/" class="md-nav__link">
<span class="md-ellipsis">
Liquidity Pools
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../sock/" class="md-nav__link">
<span class="md-ellipsis">
SOCK
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../swap/" class="md-nav__link">
<span class="md-ellipsis">
Trade / Swap
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Other Use Cases
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Other Use Cases
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#merchant-payment-in-any-token" class="md-nav__link">
<span class="md-ellipsis">
Merchant payment in any token
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pay-transaction-fee-with-token" class="md-nav__link">
<span class="md-ellipsis">
Pay transaction fee with token
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#on-chain-price-oracle" class="md-nav__link">
<span class="md-ellipsis">
On-chain Price Oracle
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../wallets/" class="md-nav__link">
<span class="md-ellipsis">
Wallets
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../whitepaper/" class="md-nav__link">
<span class="md-ellipsis">
Whitepaper
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../yield/" class="md-nav__link">
<span class="md-ellipsis">
Pool Yield
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_12" >
<label class="md-nav__link" for="__nav_3_12" id="__nav_3_12_label" tabindex="0">
<span class="md-ellipsis">
API
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_12_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_12">
<span class="md-nav__icon md-icon"></span>
API
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../API/" class="md-nav__link">
<span class="md-ellipsis">
Riften Labs Indexer API Documentation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/bcmr/" class="md-nav__link">
<span class="md-ellipsis">
/bcmr Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/broadcast/" class="md-nav__link">
<span class="md-ellipsis">
Transaction Broadcast API
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/cauldron/" class="md-nav__link">
<span class="md-ellipsis">
/cauldron/ Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/contract-subscribe/" class="md-nav__link">
<span class="md-ellipsis">
Contract subscribe
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/ido/" class="md-nav__link">
<span class="md-ellipsis">
/ido Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/moria_v11/" class="md-nav__link">
<span class="md-ellipsis">
/moria/v11 Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/oracle/" class="md-nav__link">
<span class="md-ellipsis">
/oracle Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/root/" class="md-nav__link">
<span class="md-ellipsis">
/ Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/tokenbch/" class="md-nav__link">
<span class="md-ellipsis">
/tokenbch Endpoints
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../API/tokentoken/" class="md-nav__link">
<span class="md-ellipsis">
/tokentoken Endpoints
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_13" >
<label class="md-nav__link" for="__nav_3_13" id="__nav_3_13_label" tabindex="0">
<span class="md-ellipsis">
Knowledge base
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_13_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_13">
<span class="md-nav__icon md-icon"></span>
Knowledge base
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../knowledge-base/" class="md-nav__link">
<span class="md-ellipsis">
Knowledge Base
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../knowledge-base/hdwallet/" class="md-nav__link">
<span class="md-ellipsis">
HD Wallet &amp; Derivation Paths
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../knowledge-base/pending/" class="md-nav__link">
<span class="md-ellipsis">
Pending Transactions
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../knowledge-base/summon/" class="md-nav__link">
<span class="md-ellipsis">
Pool Announcement (SUMMON)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../knowledge-base/token-rating/" class="md-nav__link">
<span class="md-ellipsis">
Token Rating
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../knowledge-base/txordering/" class="md-nav__link">
<span class="md-ellipsis">
Ordering of trades on Cauldron
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<span class="md-ellipsis">
Delphi
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Delphi
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../delphi/" class="md-nav__link">
<span class="md-ellipsis">
Delphi Oracle
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
<span class="md-ellipsis">
Moria
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Moria
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../moria/" class="md-nav__link">
<span class="md-ellipsis">
Moria Protocol
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/borrowing/" class="md-nav__link">
<span class="md-ellipsis">
Borrowing, redeeming and liquidations
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/developer-resources/" class="md-nav__link">
<span class="md-ellipsis">
Developer Resources
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/general/" class="md-nav__link">
<span class="md-ellipsis">
General
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/roadmap/" class="md-nav__link">
<span class="md-ellipsis">
Roadmap
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_6" >
<label class="md-nav__link" for="__nav_5_6" id="__nav_5_6_label" tabindex="0">
<span class="md-ellipsis">
FAQ
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_6">
<span class="md-nav__icon md-icon"></span>
FAQ
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../moria/FAQ/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/FAQ/liquidation-incentives/" class="md-nav__link">
<span class="md-ellipsis">
Liquidation Incentives
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/FAQ/redeem-bch-balance/" class="md-nav__link">
<span class="md-ellipsis">
Where is my BCH after redeeming?
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_7" >
<label class="md-nav__link" for="__nav_5_7" id="__nav_5_7_label" tabindex="0">
<span class="md-ellipsis">
Technical
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_7">
<span class="md-nav__icon md-icon"></span>
Technical
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../moria/technical/bpsoracle/" class="md-nav__link">
<span class="md-ellipsis">
Basis Point Oracle
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/technical/delphi-v1/" class="md-nav__link">
<span class="md-ellipsis">
Delphi Oracle (v1)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/technical/deployment/" class="md-nav__link">
<span class="md-ellipsis">
Technical Details
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/technical/wainterest/" class="md-nav__link">
<span class="md-ellipsis">
Weighted Average Interest Rate
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_8" >
<label class="md-nav__link" for="__nav_5_8" id="__nav_5_8_label" tabindex="0">
<span class="md-ellipsis">
V0
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_8">
<span class="md-nav__icon md-icon"></span>
V0
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../moria/v0/" class="md-nav__link">
<span class="md-ellipsis">
Moria v0
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../moria/v0/testrun/" class="md-nav__link">
<span class="md-ellipsis">
Moria Protocol v0 Test Run #1 Overview
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
<span class="md-ellipsis">
Router
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Router
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../router/" class="md-nav__link">
<span class="md-ellipsis">
Cauldron Router API
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
<label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
<span class="md-ellipsis">
Api
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_2">
<span class="md-nav__icon md-icon"></span>
Api
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../router/api/route.quote/" class="md-nav__link">
<span class="md-ellipsis">
route.quote
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../router/api/route.subscribe/" class="md-nav__link">
<span class="md-ellipsis">
route.subscribe
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../router/api/tx.build/" class="md-nav__link">
<span class="md-ellipsis">
tx.build
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../router/api/tx.subscribe/" class="md-nav__link">
<span class="md-ellipsis">
tx.subscribe
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_3" >
<label class="md-nav__link" for="__nav_6_3" id="__nav_6_3_label" tabindex="0">
<span class="md-ellipsis">
Protocol
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_3">
<span class="md-nav__icon md-icon"></span>
Protocol
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../router/protocol/errors/" class="md-nav__link">
<span class="md-ellipsis">
Error Codes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../router/protocol/overview/" class="md-nav__link">
<span class="md-ellipsis">
Protocol Overview
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_4" >
<label class="md-nav__link" for="__nav_6_4" id="__nav_6_4_label" tabindex="0">
<span class="md-ellipsis">
Schemas
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_4">
<span class="md-nav__icon md-icon"></span>
Schemas
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../router/schemas/" class="md-nav__link">
<span class="md-ellipsis">
JSON Schemas
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Wizardconnect
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Wizardconnect
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../wizardconnect/" class="md-nav__link">
<span class="md-ellipsis">
WizardConnect
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/connection-uri/" class="md-nav__link">
<span class="md-ellipsis">
Connection URI and key exchange
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/dapp/" class="md-nav__link">
<span class="md-ellipsis">
Dapp integration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/extensions/" class="md-nav__link">
<span class="md-ellipsis">
Extensions
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/protocol/" class="md-nav__link">
<span class="md-ellipsis">
Protocol
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/pubkey-derivation/" class="md-nav__link">
<span class="md-ellipsis">
xpub delivery and pubkey derivation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/react/" class="md-nav__link">
<span class="md-ellipsis">
React integration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/serialization/" class="md-nav__link">
<span class="md-ellipsis">
Relay serialization
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/transport/" class="md-nav__link">
<span class="md-ellipsis">
Relay transport
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/wallet/" class="md-nav__link">
<span class="md-ellipsis">
Wallet integration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../wizardconnect/xpub-sharing/" class="md-nav__link">
<span class="md-ellipsis">
xpub sharing: why it's safe and why we do it
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#merchant-payment-in-any-token" class="md-nav__link">
<span class="md-ellipsis">
Merchant payment in any token
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#pay-transaction-fee-with-token" class="md-nav__link">
<span class="md-ellipsis">
Pay transaction fee with token
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#on-chain-price-oracle" class="md-nav__link">
<span class="md-ellipsis">
On-chain Price Oracle
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<nav class="md-path" aria-label="Navigation" >
<ol class="md-path__list">
<li class="md-path__item">
<a href="../.." class="md-path__link">
<span class="md-ellipsis">
Riften Labs Documentation
</span>
</a>
</li>
<li class="md-path__item">
<a href="../" class="md-path__link">
<span class="md-ellipsis">
Cauldron
</span>
</a>
</li>
</ol>
</nav>
<article class="md-content__inner md-typeset">
<h1 id="other-use-cases">Other Use Cases</h1>
<p>The main use case of the Cauldron protocol is for trading cashtokens in a decentralized manner. However, the contract is very flexible and allows multiple other use cases. Here are a few use cases that have been identified.</p>
<h2 id="merchant-payment-in-any-token">Merchant payment in any token</h2>
<p>When a merchant wants to get paid in a token, Cauldron ca enable buyers to pay in tokens they dont hold by utilising the contract.</p>
<pre class="mermaid"><code>flowchart LR
cIn[
Contract with
USDC
]
bchIn[
Payment with
BCH
]
tx[
Bitcoin Cash
Transaction
]
cOut[
Contract with
USDC
]
merchantOut[
Merchant
payment in
USDC
]
bchOut[
BCH change to
customer
]
cIn --&gt; tx
bchIn --&gt; tx
tx --&gt; cOut
tx --&gt; merchantOut
tx --&gt; bchOut
</code></pre>
<blockquote>
<p>Figure: Paying a merchant in USDC, without the user owning any USDC.</p>
</blockquote>
<p>For instance, a user with BCH can directly pay a merchant requesting USDC by engaging a Cauldron contract to perform the exchange within the transaction itself.</p>
<h2 id="pay-transaction-fee-with-token">Pay transaction fee with token</h2>
<p>Bitcoin Cash network fee has to be paid in Bitcoin Cash. When a wallet has tokens, but no BCH, it is possible to utilize the Cauldron protocol to pay the fee with a token.</p>
<p>This works by including a Cauldron contract in the transaction and sell tokens to it, in return taking enough BCH to cover fee.</p>
<pre class="mermaid"><code>flowchart LR
cIn[
Contract with
TOKEN/BCH
]
tokenIn[
Input with
TOKEN
]
tx[
Bitcoin Cash
Transaction
]
cOut[
Contract with
TOKEN/BCH
]
tokenOut[
Output with
TOKEN
]
cIn --&gt; tx
tokenIn --&gt; tx
tx --&gt; cOut
tx --&gt; tokenOut
</code></pre>
<h2 id="on-chain-price-oracle">On-chain Price Oracle</h2>
<p>By taking a Cauldron as input, it is possible to use it as a price oracle with introspection. By looking at the ratio between TOKEN and BCH in contracts, it is possible to calculate the market price of a token.</p>
<pre class="mermaid"><code>flowchart LR
cIn[
Contract with
TOKEN/BCH
]
c2In[
Smart Contract
using price
]
tx[
Bitcoin Cash
Transaction
]
cOut[
Contract with
TOKEN/BCH
]
c2Out[
Smart Contract
using price
]
c2In --&gt; tx
cIn --&gt; tx
tx --&gt; c2Out
tx --&gt; cOut
</code></pre>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
</main>
<footer class="md-footer">
<nav class="md-footer__inner md-grid" aria-label="Footer" >
<a href="../swap/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Trade / Swap">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</div>
<div class="md-footer__title">
<span class="md-footer__direction">
Previous
</span>
<div class="md-ellipsis">
Trade / Swap
</div>
</div>
</a>
<a href="../wallets/" class="md-footer__link md-footer__link--next" aria-label="Next: Wallets">
<div class="md-footer__title">
<span class="md-footer__direction">
Next
</span>
<div class="md-ellipsis">
Wallets
</div>
</div>
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11z"/></svg>
</div>
</a>
</nav>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
</div>
<div class="md-social">
<a href="https://x.com/riftenlabs" target="_blank" rel="noopener" title="Riften Labs on X" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M357.2 48h70.6L273.6 224.2 455 464H313L201.7 318.6 74.5 464H3.8l164.9-188.5L-5.2 48h145.6l100.5 132.9zm-24.8 373.8h39.1L119.1 88h-42z"/></svg>
</a>
<a href="https://x.com/moriamoney" target="_blank" rel="noopener" title="Moria Money on X" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M357.2 48h70.6L273.6 224.2 455 464H313L201.7 318.6 74.5 464H3.8l164.9-188.5L-5.2 48h145.6l100.5 132.9zm-24.8 373.8h39.1L119.1 88h-42z"/></svg>
</a>
<a href="https://x.com/cauldronswap" target="_blank" rel="noopener" title="Cauldron Swap on X" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 7.1.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2025 Fonticons, Inc.--><path d="M357.2 48h70.6L273.6 224.2 455 464H313L201.7 318.6 74.5 464H3.8l164.9-188.5L-5.2 48h145.6l100.5 132.9zm-24.8 373.8h39.1L119.1 88h-42z"/></svg>
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"annotate": null, "base": "../..", "features": ["navigation.footer", "navigation.path"], "search": "../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
<script src="../../assets/javascripts/bundle.d7400e89.min.js"></script>
<script src="../../javascripts/mathjax.js"></script>
<script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6"></script>
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
</body>
</html>