Address types
Bitcoin taproot addresses
Every Spark wallet has a standard Bitcoin taproot address (bc1p... on mainnet) for L1 deposits. This is the same address format used by any Bitcoin wallet. Your users can receive Bitcoin from Coinbase, a hardware wallet, or any on-chain source.
On test networks you’ll see different prefixes: tb1p... (testnet/signet) and bcrt1p... (regtest/local).
Lightning invoices
Spark wallets can create and pay Lightning invoices without running a node or managing channels. Some apps only expose Lightning. Users never see a Spark address or know Spark exists.Spark addresses
Spark addresses are Bech32m-encoded identifiers that map to a wallet’s identity public key. Think of them as user IDs. They identify a wallet on the Spark network. Transfers between Spark addresses are instant and free.What to expose
Spark is modular. Pick the addressing that fits your use case:
The point: Spark adapts to your product. It can be a full L1 wallet, a Lightning payments backend, a free internal ledger, or all three at once. Your users don’t need to know what’s underneath.
Spark address format
For developers working directly with Spark addresses, here’s the format:Network prefixes
Key facts
- Derived from your wallet’s network and identity public key
- Same wallet always produces the same Spark address
- Network-specific. A mainnet wallet and regtest wallet will have different addresses