Non-custodial by design
How funds move on BitDoves Market
Every flow where money moves, who holds custody at each step, and which rail carries it. Nothing here is a model or a roadmap — this is the system as built.
| Flow | Custody | From | Rail | To |
|---|---|---|---|---|
Marketplace trade — Lightning | Self-custody on both sides | Buyer's Lightning wallet | Two Lightning invoices in parallel (98% / 2% split, or 99% / 1% for Pro) | Seller's Lightning address + platform Lightning address |
Marketplace trade — on-chain | Self-custody on both sides | Buyer's on-chain wallet | Bitcoin mainnet | Seller's on-chain address (platform never receives) |
Pro membership (2,100 sats / 30 days or 21,000 / yr) | Buyer self-custody → platform Lightning address | Buyer's Lightning wallet | Lightning Network | Platform Lightning address |
Verified Merchant (21,000 sats / year) | Buyer self-custody → platform Lightning address | Merchant's Lightning wallet | Lightning Network | Platform Lightning address |
Featured boost (500 / 2,100 / 8,400 sats) | Buyer self-custody → platform Lightning address | User's Lightning wallet | Lightning Network | Platform Lightning address |
Reviews, messaging, listings, profiles | n/a — no money moves | — | — | — |
What we are not
- Not a payment processor. BitDoves Market does not initiate, route, settle, or hold funds for trades. Buyers and sellers transact directly using their own Bitcoin wallets over the Lightning Network or Bitcoin mainnet.
- Not a custodian. There is no platform wallet for user balances. You cannot "deposit" into BitDoves Market and you cannot "withdraw" from it, because there is nothing here to hold.
- Not a money transmitter. The platform's only on-network receipts are its own subscription, verification, boost, and 1–2% coordination fees, paid by the user from their own wallet to the platform's published Lightning address.
- Not a guarantor of trades. Disputes are mediated, not underwritten. The platform cannot reverse a Bitcoin transaction.
Disclosure
Lightning addresses (name@domain) resolve through the domain operator you choose. That resolution is a protocol-level dependency on whichever Lightning address provider you use — funds still stay in your wallet. Choose a provider you trust, or run your own.