跳转到内容
Open StampDEX

资金与资产托管机制

State
Verified
Lifecycle
stable
Applies to
continuous deployment, verify with GET /api/version
Last verified
2026-09-01
Chain
bitcoin / mainnet
Source and review
Owning source
orders module, settlement worker, OrderStatus enum, legal/custodyClaims
Review window
90 days
View page as Markdown
Full source and verification record
Owning repository
bitcoinuniverseio/stampdex (private application source)
Source path
orders module, settlement worker, OrderStatus enum, legal/custodyClaims
Applicable release
continuous deployment, verify with GET /api/version
Chain and network
bitcoin / mainnet
Lifecycle
stable
Last verified
2026-09-01
This page
Edit on GitHub · Bitcoin Universe platform

[!NOTE] 简体中文官方文档:非托管核心:未挂单时资产完全在您的钱包;挂单时进入单交易独立脚本;成交时原子化互换。 核心交易规则为非托管模式,买卖双方按标准费率收取服务费,并于比特币主网进行原子结算。

This is the page to read before you sign anything. A Bitcoin trade is not instant, and during the gap your money is somewhere. Somewhere specific, with an address, not “in the system”.

  • Buyer side: held by the buyer, or delivered to the buyer
  • Seller side: held by the seller, or delivered to the seller
  • Held by StampDEX for the length of one trade
  • Settled on Bitcoin, final
  • Buyer side: held by the buyer, or delivered to the buyer
  • Seller side: held by the seller, or delivered to the seller
  • Held by StampDEX for the length of one trade
  • Settled on Bitcoin, final
Choose a trade
Pick a stage

Listing opens

The asset
In listing escrow, locked to this listing
The BTC
With the buyer, not yet committed
Who controls the keys
Escrow keys: StampDEX (server side, encrypted)
Status
Buyer browsing; nothing signed
What proves it
Listing PSBT signed by the seller

Buyer signs the payment

The asset
In listing escrow
The BTC
Into the listing escrow address
Who controls the keys
Escrow keys: StampDEX; payment key: the buyer wallet
Status
Payment broadcast, waiting for confirmations
What proves it
Funding transaction on Bitcoin

Settlement waits for confirmations

The asset
Transfer transaction broadcast; one confirmation away
The BTC
In listing escrow until the transfer confirms
Who controls the keys
Escrow keys: StampDEX
Status
Settlement worker watching the chain
What proves it
Transfer transaction id, two confirmations required

Filled

The asset
In the buyer's wallet
The BTC
Paid to the seller, service fee deducted
Who controls the keys
Escrow emptied; nobody holds anything for this trade
Status
Trade complete on Bitcoin
What proves it
Transfer and payout transactions confirmed

If it fails

The asset
Held in escrow, recoverable
The BTC
Held in escrow, recoverable
Who controls the keys
Escrow keys: StampDEX until recovery completes
Status
Failed: escrow released nothing
What proves it
Recovery path in Recovery
Pick a stage

Dispenser open

The asset
With the seller's dispense address, armed
The BTC
With the buyer, not yet committed
Who controls the keys
Dispenser: the seller; payment: the buyer
Status
Buyer picks a stamp from the dispenser
What proves it
Dispenser transaction on Bitcoin

Buyer pays the dispenser

The asset
Released by the protocol in the same transaction
The BTC
Straight to the seller, with the buyer paying the network fee
Who controls the keys
Neither side waits on the venue: the dispenser is atomic
Status
One transaction, payment and dispense together
What proves it
The single confirmed transaction on Bitcoin

Confirmed

The asset
In the buyer's wallet
The BTC
With the seller
Who controls the keys
Nobody holds anything for this trade
Status
Complete; the venue never touched the funds
What proves it
One confirmation on the payment transaction

The complete ledger, including stamp dispenser caveats and atomic stamp purchases when they arrive, is in Where your funds are.

Trade and stageThe assetThe BTC
SRC-20 purchase: Listing opensIn listing escrow, locked to this listingWith the buyer, not yet committed
SRC-20 purchase: Buyer signs the paymentIn listing escrowInto the listing escrow address
SRC-20 purchase: Settlement waits for confirmationsTransfer transaction broadcast; one confirmation awayIn listing escrow until the transfer confirms
SRC-20 purchase: FilledIn the buyer's walletPaid to the seller, service fee deducted
SRC-20 purchase: If it failsHeld in escrow, recoverableHeld in escrow, recoverable
Stamp dispenser purchase: Dispenser openWith the seller's dispense address, armedWith the buyer, not yet committed
Stamp dispenser purchase: Buyer pays the dispenserReleased by the protocol in the same transactionStraight to the seller, with the buyer paying the network fee
Stamp dispenser purchase: ConfirmedIn the buyer's walletWith the seller

An SRC-20 trade uses the three-transaction listing flow. The seller signs the tokens into escrow addresses created for that one listing. The buyer pays the exact total to that listing’s payment address. When the payment confirms and the token balance checks out, the settlement worker broadcasts the transfer that delivers the tokens, and the seller is paid.

That design means there is a window where your BTC has left your wallet and has not reached the seller. StampDEX says so on the buy panel before you sign, not afterwards.

Custody at every stage of an SRC-20 trade on StampDEXA grid with one column per order state and two rows. The first row says where the tokens are, the second says where the BTC is, and a strip underneath says who the trade is waiting on. From Open to Settling the tokens sit in the per-listing escrow that StampDEX controls. The buyer BTC stays in the buyer own wallet until the payment is broadcast, and then it too sits in the listing escrow. At Awaiting confirmation the tokens are in a broadcast Bitcoin transaction waiting for two blocks of depth. Only at Filled do the tokens reach the buyer wallet and the proceeds reach the seller wallet. In the last column, separated by a dashed rule, the Failed state shows both the tokens and the BTC still in the listing escrow, held and recoverable, waiting on an operator.THE TOKENSthe listed amountTHE BTCthe paymentWAITING ONOPENListing escrowsigned into escrowBuyer's walletnothing committedA buyerPENDINGListing escrowlocked to a buyerBuyer's walletnot yet signedThe buyer to payAWAITING TRANSFERListing escrowstill heldListing escrowpayment broadcastBitcoin confirmationsSETTLINGListing escrowbalance verifiedListing escrownot yet releasedThe settlement workerAWAITING CONF.In the transfer txbroadcast to chainListing escrowheld until 2 conf.Two confirmationsFILLEDBuyer's walletdeliveredSeller's walletless the seller feeNobody. DoneFAILEDListing escrownever transferredListing escrowheld, not lostAn operator
Read down a column to see the whole picture at one moment. The line that matters: between Awaiting transfer and Filled, the BTC has left the buyer and has not reached the seller. It is in the escrow addresses StampDEX created for that one listing. That is not a loss and it is not a queue. It is a named on-chain address you can look up in any block explorer.

StampDEX generates the per-listing escrow keys server side and holds them encrypted for the length of that trade. They are never sent to a browser. Those escrow addresses are the only funds StampDEX ever operates, and they exist for one listing at a time.

Your own wallet keys never leave your wallet. Every transaction that spends from your address is a 部分签名的比特币交易 (PSBT) your wallet displays and signs. See Review a 部分签名的比特币交易 (PSBT) before signing.

The buyer The seller
Before payment Nothing committed Tokens are in escrow and cannot be spent elsewhere
Payment broadcast, not confirmed BTC is in the listing escrow, tokens not yet received Tokens still in escrow, no proceeds yet
Settlement broadcast Tokens are in a Bitcoin transaction BTC is in escrow, released on confirmation
Filled Holds the tokens Holds the proceeds, less the seller fee
Failed BTC held in escrow, recoverable Tokens held in escrow, recoverable

Neither side is ever holding both. That is the point of the escrow: the tokens are committed before a buyer is asked for money, and the money is committed before the tokens are released.

Bitcoin Stamps: your BTC never passes through StampDEX

Section titled “Bitcoin Stamps: your BTC never passes through StampDEX”

A stamp sale is a Counterparty 分发器. The seller opens a dispenser holding the stamp. The buyer sends the asking price to the dispenser address in a Bitcoin transaction StampDEX composes and the buyer’s wallet signs. When that transaction confirms, the dispense and the payment happen together.

Custody at every stage of a Bitcoin Stamps purchase on StampDEXA grid with four columns and two rows. The first row says where the stamp is, the second says where the BTC is, and a strip underneath says who the purchase is waiting on. While the dispenser is open, the stamp is held by Counterparty at the seller address and the BTC is in the buyer own wallet. After the buyer signs, the BTC is in a broadcast Bitcoin transaction and the stamp has not moved. When that transaction confirms, the stamp reaches the buyer and the BTC reaches the seller in the same transaction. At no stage does a StampDEX-controlled address appear.THE STAMPthe listed assetTHE BTCthe paymentWAITING ONDISPENSER OPENSeller's dispenserescrowed on chainBuyer's walletnothing committedA buyerCOMPOSEDSeller's dispenserunchangedBuyer's walletbuilt, not signedThe buyer to signBROADCASTSeller's dispenserunchangedIn the payment txin the mempoolA blockCONFIRMEDBuyer's walletdispensedSeller's addresssame transactionNobody. Done
Compare this with the SRC-20 ledger. There is no purple column here, because a stamp purchase never passes through a StampDEX-controlled address. The stamp moves and the payment lands in one confirmed Bitcoin transaction, so there is no state in which your money has left you and not reached the seller.

The registry records this directly: for Bitcoin Stamps, StampDEX has no settle authority and no reconcile authority on the marketplace surface. There is nothing to settle, because the Bitcoin transaction is the settlement. See What you can and cannot do.

If an SRC-20 order shows Awaiting transfer, Settling, Awaiting confirmation, or Failed, your BTC is in the listing’s escrow address. Not spent, not swept, not in a queue. You can open the order page, copy the address and the transaction ids, and look at them in any block explorer without asking anybody.

Failed means the payment confirmed but the expected token balance could not be verified in time. The order stops there deliberately rather than releasing money against an unverified balance. An operator resolves it. See Recovery.

  • It cannot spend from your wallet. It has no key of yours.
  • It cannot change a transaction after your wallet signed it. Change one byte and the signature is void.
  • It cannot move a stamp you own. A stamp only moves when a transaction you signed, or a dispenser you opened, moves it.
  • It cannot make a Bitcoin transaction confirm faster than the fee rate you chose buys.
Was this page helpful?
How can we improve it?
0/500
✓Thank you for helping improve StampDEX documentation!