Pending TEDS exchange rows in your transaction history are the signal that your wallet was insufficient when a customer tried to exchange a stamp or reward.
⚠️ Earlier versions of this article conflated TEDS pending exchanges with the subscription
payment_failed5-day grace period — those are two different things. See the explanation article for the distinction.
Diagnosis
Open /teds/transactions. Look for rows of type:
stamp-exchange-pending— a customer tried to exchange a stamp for TEDS and your wallet was short.reward-exchange-pending— a customer tried to exchange a completed reward for TEDS and your wallet was short.
Both rows surface a tooltip:
"Customer exchanged a stamp/reward, but the transaction is pending because your TEDS balance is insufficient. Please top up your TEDS to complete the exchange."
Fix
Top up via /teds/purchase. After payment, the wallet’s available TEDS goes up, and the queued pending exchanges process automatically.
If pending rows are still showing 10+ minutes after a successful top-up, open a ticket with the top-up transaction ID.
What we don’t document at v1
- A specific deadline for pending exchanges — the audited UI doesn’t show a countdown, just the prompt to top up.
- A "TEDS-related suspended state" — what gets suspended in the audited code is the subscription when the
payment_failed5-day grace ends, not the TEDS wallet specifically.
Preventing this
- Watch your TEDS wallet — the displayed "Available Balance" includes both
tedsBalanceandmadTedsBalancesummed, so the visible number can look healthier than the settled balance actually is. Pending exchange rows in/teds/transactionsare the reliable signal. - Top up proactively to cover expected outflows.
In one sentence
Pending exchange rows = wallet was short. Top up to clear them. No specific deadline visible in v1; the prompt is just "please top up".