You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/services/ttx.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -178,11 +178,17 @@ Enables the transfer of token ownership. The service:
178
178
### Redeem
179
179
A specialized transfer where the recipient is "hidden" or "empty," effectively removing the tokens from circulation on the ledger.
180
180
181
+
Redeem supports an enhanced flow where an issuer signature is required as part of transfer validation:
182
+
1. Add the redeem action with `tx.Redeem(...)`.
183
+
2. If the issuer endpoint cannot be resolved automatically, pass `ttx.WithFSCIssuerIdentity(...)` so the initiator can contact the issuer for endorsement.
184
+
3. Optionally pass `ttx.WithIssuerPublicParamsPublicKey(...)` to pin which issuer public-parameters signing key must authorize the redeem.
185
+
4. Run `CollectEndorsementsView` to collect owner, auditor (if configured), and issuer signatures.
186
+
181
187
## Collecting Endorsements
182
188
183
189
The `CollectEndorsementsView` is responsible for gathering all signatures required to make a transaction valid:
184
190
***Owner Signatures**: For every token spent, the service requests a signature from the node that owns the corresponding identity.
185
-
***Issuer Signatures**: For transactions involving token issuance.
191
+
***Issuer Signatures**: For transactions involving token issuance and enhanced redeem flows that require issuer authorization.
186
192
***Auditor Signatures**: If the TMS is configured with an auditor, the transaction must be approved via the `AuditApproveView`.
187
193
***Network Endorsements**: The service delegates to the **Network Service** to obtain backend-specific endorsements (e.g., Fabric chaincode endorsements).
Copy file name to clipboardExpand all lines: docs/tokenapi.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,7 +59,7 @@ A [Request](../token/request.go) is a ledger-agnostic blueprint for a token tran
59
59
60
60
### Core Actions
61
61
***Issue**: Minting new tokens into the system.
62
-
***Transfer**: Reassigning ownership of existing tokens (includes **Redeem** by transferring to a null owner).
62
+
***Transfer**: Reassigning ownership of existing tokens (includes **Redeem** by transferring to a null owner; enhanced redeem flows can additionally require issuer authorization/signature).
63
63
64
64
### The Request Lifecycle
65
65
1.**Assemble**: Add actions to the `Request` using a TMS.
0 commit comments