Skip to main content

POST /api/tally/coins/redeem

MethodPOST
Path/api/tally/coins/redeem
GroupTally Protocol
Authauthenticated session — the coin is pulled to the caller
Sourceshared/api-core/src/routes/tallyProtocol.ts

What it does

Pulls a bearer coin back into your wallet. If the coin's home_origin is this domain, it is un-escrowed straight to you. If it is a different domain, this runs a cross-domain migrate: the issuing domain burns and signs it and this domain mints a fresh coin re-homed to you. Idempotent — a retry resolves to the same minted coin (no double-mint). A stale copy (wrong spend_seq) is rejected.

Call it

curl -X POST https://zeqond.com/api/tally/coins/redeem \
-H "Content-Type: application/json" -H "Authorization: Bearer <session>" \
-d '{ "kind":"zeq-coin", "token_id":"ZT-…", "token_hash":"…", "value_zeq":6,
"home_origin":"https://zeqapi.com", "node_sig":"…", "node_pubkey":"…",
"spend_seq":1, "bearer_ticket":"…" }'

Returns

{ "ok": true, "redeemed": { "token_id": "ZT-…", "value_zeq": 6, "owner": "ZEQ…",
"migrated_from": "ZT-…@https://zeqapi.com" } }