Skip to content

[FE-51] Build detokenization UI — initiate and vote on converting tokens back to single ownership #988

Description

@yusuftomilola

Overview

When a tokenized asset needs to return to single ownership (e.g., before sale), a detokenization proposal must be initiated and approved by majority token holders (50%+ threshold). This UI manages that process. Depends on BE-62 for the contract interaction.

Context

  • Add a "Detokenize" option to the tokenized asset detail page (admin only, under Manage Tokens)
  • The assetsup contract (contracts/assetsup/src/detokenization.rs) defines the proposal and voting process
  • Backend endpoint needed: POST /stellar/assets/:id/detokenize and GET /stellar/assets/:id/detokenize/status

Acceptance Criteria

  • "Initiate Detokenization" button (admin only) on tokenized asset management page
  • Clicking opens an explanation modal: "Detokenization requires 50% of token holders to approve. This cannot be undone."
  • After initiating, show the detokenization proposal status: vote count, threshold needed, days until voting closes
  • Token holders see a "Vote on Detokenization" card on the asset detail page with Approve/Reject buttons
  • Progress bar showing votes collected vs threshold required
  • Once threshold is reached: show "Detokenization approved. Processing on-chain..." and display the final transaction hash
  • After completion: the asset detail page reverts to showing the non-tokenized view

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions