Workflow de l'application de jeton de dépôt

Un jeton de dépôt est un jeton fongible qui représente un dépôt bancaire.

Le scénario de jeton de dépôt prend en charge l'émission et la distribution de jetons avec une surcharge de gouvernance minimale. Les jetons sont extraits par le créateur, puis émis aux utilisateurs par l'émetteur. Le créateur utilise un transfert basé sur le blocage pour envoyer des jetons à l'émetteur, ce qui nécessite une validation par l'approbateur. L'émetteur peut distribuer des jetons directement aux utilisateurs sans autre approbation requise. Les utilisateurs n'ont pas besoin d'approbations pour graver leurs propres jetons.

  • Les rôles Minter et Notary sont requis.
  • Le rôle de brûleur n'est pas requis. Les utilisateurs peuvent graver leurs propres jetons à l'aide de l'API burnTokens.
  • L'émetteur utilise la méthode transferTokens pour transférer directement des jetons à un utilisateur.
  • Le seul transfert basé sur le blocage est entre le créateur et l'émetteur.
Le tableau suivant récapitule les acteurs de ce scénario.
Acteur Rôle Description
Administrateur Administration des jetons Initialise le système, affecte les rôles de mineur et de notaire.
Créateur Minter Demande l'extraction et lance le transfert basé sur le blocage à l'émetteur.
Approbateur Notaire Approuve les demandes de transaction et termine les transferts de blocage.
Emetteur Aucun élément Reçoit des jetons du créateur et les distribue directement aux utilisateurs.
Utilisateur Aucun élément Reçoit des jetons directement de l'émetteur. Les utilisateurs peuvent graver leurs jetons sans approbation requise.
L'administrateur effectue les étapes suivantes pour initialiser le système.
  1. Initialisez le système de jetons de dépôt à l'aide de l'API initializeDepositToken.
  2. Inscrivez des organisations à l'aide de l'API registerOrg.
  3. Créez des comptes à l'aide de l'API createAccount.
  4. Associez le jeton aux comptes à l'aide de l'API associateTokenToAccount.
  5. Affectez le rôle mineur au créateur et le rôle notaire à l'approbateur à l'aide de l'API addRole.
Une fois le système initialisé, un flux de processus standard suit ces étapes de base.
  1. Jetons de dépôt Mint.
    1. Le créateur de jeton utilise l'API requestMint pour soumettre une demande aux jetons de dépôt mint.
    2. L'approbateur utilise l'API approveMint pour vérifier et approuver la demande d'extraction de jetons de dépôt. Les jetons de dépôt sont crédités sur le compte du créateur. L'approbateur peut également utiliser l'API rejectMint pour refuser la demande.
  2. Transférer les jetons de dépôt à l'émetteur.
    1. Le créateur utilise l'API holdTokens pour demander le transfert des jetons à l'émetteur.
    2. L'approbateur utilise l'API executeHoldTokens pour valider et approuver la demande de transfert. Les jetons de dépôt sont transférés sur le compte de l'émetteur. L'approbateur peut également utiliser l'API releaseHold pour rejeter le transfert.
  3. Emettre des jetons aux utilisateurs.
    • L'émetteur utilise l'API transferTokens pour un utilisateur. Les jetons de dépôt sont crédités sur le compte de l'utilisateur.
  4. Brûler les jetons.
    • L'utilisateur peut utiliser l'API burnTokens pour échanger ses jetons de dépôt.
  5. Vérifiez l'équilibre du jeton.
    • Les utilisateurs peuvent utiliser l'API getAccountBalance pour obtenir le nombre total de jetons de dépôt qu'ils détiennent.