Skip to content

[FE-52] Build transfer restrictions management UI — accredited investor and geographic allowlists #989

Description

@yusuftomilola

Overview

The assetsup contract supports transfer restrictions — only accredited investors or users from specific geographic regions can receive tokens. This admin UI manages those allowlists. Depends on BE-60 and the transfer_restrictions module in the contract.

Context

  • Add a "Transfer Restrictions" section to the tokenized asset management page (admin only)
  • Contract source: contracts/assetsup/src/transfer_restrictions.rs — manages accredited investor list and geographic allowlist
  • Backend endpoints needed: GET/POST/DELETE /stellar/assets/:id/restrictions/investors and GET/POST/DELETE /stellar/assets/:id/restrictions/regions

Acceptance Criteria

  • "Transfer Restrictions" tab visible on tokenized assets (admin only)
  • Two sections: "Accredited Investors" and "Geographic Restrictions"
  • Accredited Investors: table of approved Stellar addresses (truncated display), add button (input for address), remove button per row
  • Geographic Restrictions: list of allowed country codes (ISO 3166-1 alpha-2), add button (country code input or dropdown), remove button per row
  • Toggle switch: "Restrictions Enabled" — when off, any address can receive tokens; when on, only allowlisted addresses can
  • Each add/remove operation submits a Stellar transaction — show confirmation with tx hash
  • Warning banner when restrictions are disabled: "Token transfers are currently unrestricted. Enable restrictions to control who can receive tokens."

Metadata

Metadata

Assignees

No one assigned

    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