# UTEXO DEV - RGB Integration Infrastructure --- ## 1. What is RGB? RGB is **not a blockchain**. It’s an **execution and tokenization layer on Bitcoin** that enables: - **Token Issuance Platform** → stablecoins (USDT), securities, NFTs - **Communication Layer** → interoperable with Bitcoin, Lightning, and other Bitcoin-aligned layers - **Privacy Layer** → client-side validation; no global ledger - **Programmable Layer** → smart contracts, swaps, programmable payments - **Bitcoin Security** → anchored in Bitcoin transactions, without fragmenting Bitcoin consensus 👉 **RGB = the ideal home for USDT and tokenized assets on Bitcoin.** --- ## 2. Why RGB is Different (and Harder for Integrations) Unlike blockchains with global RPC endpoints (Ethereum → Infura/Alchemy, Solana → QuickNode, etc.), RGB executes on the **client side**. That introduces **unique complexity for integrators and developers**. ### Required Infrastructure To run RGB directly in a wallet, you need: - `bitcoind` (Bitcoin full node) - `Indexer` (to track UTXOs and commitments) - `rgb-proxy-server` for RGB wallets communication - `rgb-lib` (client-side validation library, maintained by Bitfinex) - `RGB Lightning Node` (LDK based Lightning Node with RGB functionality) - `Lightning channel with inboud/outbound liquidity` (opened lightning channel with locked RGB USDT and BTC) ### UX Problems for Integrators - **High resource usage** -> Client-side validation runs on the user’s device, consuming CPU/RAM, this degrades wallet UX. - **Always-online requirement** -> To accept a payment, the user must be online. Funds are "frozen" until they appear, unlike any other chain/network → a blocker for wallets. - **DevOps burden** -> Wallet teams need to operate and maintain infra (bitcoind, indexer, proxy). - **State backups** -> Unlike other networks, RGB requires users to back up **local state** in addition to the seed phrase. Wallets must implement data backup/restore logic specifically for RGB. - **Lightning Network** constraints (channels, inbound liqudity) --- ## 3. The UTEXO Solution UTEXO abstracts away all of this complexity. We provide a **full-stack infrastructure layer** for RGB: - Expose a **simple REST API** (non-custodial) - Developers only integrate the API → no infra, no DevOps, no state-management logic needed, no Lightning Network complexities but with full compatibility with Lightning Network - API returns a **PSBT** (Partially Signed Bitcoin Transaction) - Wallet signs the PSBT locally (keys never leave the device) - Signed PSBT is sent back to our API for broadcast & settlement - Multiple client libraries available (JS, Python, Go, Rust etc) --- ## 4. How It Works 1. **Wallet Backend / Client** requests an RGB action (create invoice, list assets, withdrawal, etc.) via UTEXO REST API. 2. **RGB Node** prepares the PSBT and tracks RGB state in UTEXO Bitcoin-native L2. 3. Client signs the PSBT locally (via our lightweight signer library). 4. Client submits the signed PSBT back. 5. UTEXO infrastrucute broadcasts transaction to UTEXO Bitcoin L2 + synchronizes RGB state 6. UTEXO Bitcoin L2 settles transaction to Bitcoin L1 (optional) ### Sequence Diagrams **Diagram 1: RGB Trander Send Flow** [![Deposit Flow Preview](https://docs.thunderstack.org/~gitbook/image?url=https%3A%2F%2F2368910087-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F3VIo3KoG7rZ0qGd8fePG%252Fuploads%252FwF4tGzXU9QNVPRF942fa%252Fdiagram-export-12.06.2025-15_12_28.png%3Falt%3Dmedia%26token%3D17010baf-8808-4a36-b7f1-519c224fc890&width=300&dpr=2&quality=100&sign=c172568c&sv=2)](https://docs.thunderstack.org/~gitbook/image?url=https%3A%2F%2F2368910087-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F3VIo3KoG7rZ0qGd8fePG%252Fuploads%252FwF4tGzXU9QNVPRF942fa%252Fdiagram-export-12.06.2025-15_12_28.png%3Falt%3Dmedia%26token%3D17010baf-8808-4a36-b7f1-519c224fc890&width=768&dpr=2&quality=100&sign=c172568c&sv=2) --- ## 5. Developer Experience - **Non-Custodial** → Keys stay local, only PSBTs are exchanged. - **Simple REST API** → no protocol complexity. - **On-demand access** → clients integrate once, and all infra is handled. - **Multi-language SDKs** → ready-made client libs (JS, Python, Go, Rust). - **Production-ready** → high aviability, monitoring, backups, scaling built in. 📄 **API Reference** → [UTEXO RGB API Docs](https://docs.thunderstack.org/bitcoin-native-infrastructure/readme/thunderlink/rgb-manager/api-reference) --- ## 6. Why UTEXO - **Hours to integrate instead of months** -> Add RGB support fast. - **Zero infra overhead** -> No lightning/bitcoind/indexer/proxy to operate. - **Better UX**-> Clients don’t suffer from long and costly transactions, CPU/RAM/HDD drain or frozen funds with lightning liquidity managment - **Future-proof** → Ultimate scalability and security with Bitcoin + Lightning + RGB Developers get simplicity of integration, while keeping RGB payments fully non-custodial, cheap, fast and scalable. ---