Skip to main content
Stablecoins are the killer app for blockchain payments, but they’ve been largely absent from Bitcoin. Spark changes that with native stablecoin issuance that’s fast, compliant, and truly Bitcoin-native.

Why Issue on Bitcoin?

The Bitcoin Advantage

Bitcoin + SparkOther Chains
Security: Bitcoin’s 15+ year security track recordNewer, less battle-tested
Neutrality: No single entity controls BitcoinOften VC-controlled
Global Trust: Bitcoin is recognized worldwideChain-specific adoption
Real Settlement: Exit to Bitcoin L1 anytimeBridge dependencies

Real-World Example: USDB

Brale launched USDB, the first Bitcoin-native stablecoin, on Spark. It demonstrates that regulated, compliant stablecoins can exist on Bitcoin with instant settlements and full reserve backing.

Stablecoin Features on Spark

Instant Transfers

Token transfers settle in under 1 second. No block confirmations, no waiting. Recipients can use funds immediately.

Zero Transfer Fees

Spark-to-Spark token transfers are free. This enables micropayments, frequent transfers, and new use cases impossible with per-transaction fees.

Built-in Compliance Controls

Spark’s BTKN token standard includes compliance features required by regulated issuers:
// Freeze tokens for a specific address (compliance action)
await issuer.freezeTokens({
  tokenId: "btkn1...",
  sparkAddress: "sp1...",
  amount: 10000n
});

// Unfreeze when compliance is satisfied
await issuer.unfreezeTokens({
  tokenId: "btkn1...",
  sparkAddress: "sp1...",
  amount: 10000n
});

Burn and Redemption

Issuers can burn tokens when users redeem for fiat, maintaining accurate supply:
await issuer.burnTokens({
  tokenId: "btkn1...",
  amount: 50000n
});

Architecture Overview

┌─────────────────────────────────────────────────┐
│                  Your Stablecoin                │
├─────────────────────────────────────────────────┤
│  Issuer Wallet (You)                            │
│  - Create token with properties                 │
│  - Mint new supply                              │
│  - Freeze/unfreeze for compliance               │
│  - Burn on redemption                           │
├─────────────────────────────────────────────────┤
│  Spark Network                                  │
│  - Instant transfers between users              │
│  - Zero fees                                    │
│  - Lightning interoperability                   │
├─────────────────────────────────────────────────┤
│  Bitcoin L1                                     │
│  - Ultimate settlement layer                    │
│  - Unilateral exit capability                   │
└─────────────────────────────────────────────────┘

Step-by-Step: Launch Your Stablecoin

1. Set Up Your Issuer Wallet

import { IssuerWallet } from "@buildonspark/issuer-sdk";

const issuer = await IssuerWallet.initialize({
  mnemonicOrSeed: "your secure mnemonic phrase...",
  network: "mainnet"
});

2. Create the Token

Define your stablecoin’s properties:
const token = await issuer.createToken({
  name: "Your Dollar",
  ticker: "YUSD",
  decimals: 6,           // Standard for USD stablecoins
  maxSupply: 1000000000, // 1 billion max supply
  isFreezable: true      // Enable compliance controls
});

console.log(`Token created: ${token.tokenId}`);
// btkn1qv6cps0n0ttm3p4gx62rzty4rjhzqwe5...

3. Mint Initial Supply

Mint tokens backed by your reserves:
await issuer.mintTokens({
  tokenId: token.tokenId,
  amount: 1000000n  // 1 YUSD (with 6 decimals)
});

4. Distribute to Users

Transfer tokens to users instantly and for free:
await issuer.transferTokens({
  tokenId: token.tokenId,
  amount: 100000n,  // 0.1 YUSD
  receiverSparkAddress: "sp1user..."
});

5. Handle Compliance

Freeze tokens when required by regulations:
// Freeze for compliance review
await issuer.freezeTokens({
  tokenId: token.tokenId,
  sparkAddress: "sp1suspicious...",
  amount: 50000n
});

6. Process Redemptions

When users redeem for fiat, burn the tokens:
await issuer.burnTokens({
  tokenId: token.tokenId,
  amount: 100000n
});

Compliance Considerations

What Spark Provides

  • Freeze/Unfreeze: Block specific addresses or amounts
  • Burn: Remove tokens from circulation on redemption
  • Analytics: Track holders and transactions
  • Audit Trail: Full transaction history

What You Handle

  • Reserve Management: Maintain 1:1 backing
  • KYC/AML: Know your customers
  • Regulatory Compliance: Meet jurisdiction requirements
  • Redemption Processing: Convert tokens back to fiat

Integration Options

Option 1: Build Your Own

Use the Issuer SDK directly to build custom issuance infrastructure.

Option 2: Stablecoin-as-a-Service

Partner with Brale for turnkey stablecoin issuance with:
  • Reserve management
  • Banking relationships
  • Compliance infrastructure
  • Regulatory guidance

Comparison: Bitcoin vs Other Chains

FeatureSpark (Bitcoin)EthereumSolana
SettlementInstant12 sec blocks400ms blocks
FeesZero$1-50+ gas~$0.001
Compliance ControlsNativeSmart contractSmart contract
Base Layer SecurityBitcoin (15+ years)Ethereum (8 years)Solana (4 years)
Unilateral ExitYes (to BTC L1)NoNo

Get Started

Ready to issue a stablecoin on Bitcoin?
  1. Technical Setup: Issuer SDK Documentation
  2. Quick Tutorial: Launch a Token in 5 Minutes
  3. Partner Option: Brale Stablecoin-as-a-Service
  4. Talk to Us: Get in Touch

Learn More