Skip to content
Testnet only: a reference implementation, not a production service.Tokens and bank transfers here are simulated and have no value.

Suspense and returns

Suspense is where money goes when the issuer receives it but can't attribute it. It is held, not credited. It is never counted as anyone's funds until an operator resolves it.

What goes to suspense

A fiat receipt or a token receipt goes to suspense when:

  • it was paid to the plain distribution address with no muxed ID;
  • its muxed ID is unknown or expired;
  • its amount or asset doesn't match the open transfer it points at;
  • it came from a wallet that isn't the redeem's source address;
  • it is a wire with no matching reference.

A wire for the wrong amount or currency on a matching mint is also moved to suspense, once per rail reference, while the mint keeps waiting.

Suspense never moves pending_out or customer balances. It is a holding place, and the ledger shows it as its own account.

Resolving it

An operator has two moves, and both need a written reason, an audit row and an event:

  • Attribute it. A wire or token item can go to a matching waiting transfer, which then continues from where it stopped. A wire item can instead be credited to an organization with no transfer. A token item always needs a redeem to attach to.
  • Return it: a token payment goes back to the source address, and a wire is reversed.

Endpoints

Suspense items are driven by events rather than a dedicated route in Phase 1.

Edit on GitHub