預入トークン・アプリケーション・ワークフロー
預入トークンは、銀行預入を表す代替トークンです。
預入トークン・シナリオでは、最小限のガバナンス・オーバーヘッドでトークンの発行および配布がサポートされます。トークンは作成者によってミントされ、発行者によってユーザーに発行されます。作成者は保留ベースの転送を使用してトークンを発行者に送信します。発行者には承認者によるサインオフが必要です。発行者はトークンをユーザーに直接配布でき、これ以上の承認は必要ありません。ユーザーは、独自のトークンを作成するために承認を必要としません。
- 最小ロールと公証ロールが必要です。
- バーナー・ロールは必要ありません。ユーザーは、
burnTokensAPIを使用して独自のトークンを作成できます。 - 発行者は、
transferTokensメソッドを使用してトークンをユーザーに直接転送します。 - 保留ベースの転送は、作成者と発行者の間のみです。
次の表に、このシナリオのアクターの概要を示します。
| アクター | ロール | 説明 |
|---|---|---|
| Administrator | トークン管理 | システムを初期化し、minterおよびnotaryのロールを割り当てます。 |
| クリエータ | マイナー | ミントを要求し、発行者への保留ベースの転送を開始します。 |
| 承認者 | 公証人 | ミント要求を承認し、保留転送を完了します。 |
| 発行者 | なし | 作成者からトークンを受け取り、ユーザーに直接配布します。 |
| ユーザー | なし | 発行者から直接トークンを受け取ります。ユーザーは、承認なしでトークンを書き込むことができます。 |
管理者は、次のステップを実行してシステムを初期化します。
initializeDepositTokenAPIを使用して、預入トークン・システムを初期化します。registerOrgAPIを使用して組織を登録します。createAccountAPIを使用してアカウントを作成します。associateTokenToAccountAPIを使用して、トークンをアカウントに関連付けます。addRoleAPIを使用して、作成者にminterロールを割り当て、承認者にnotaryロールを割り当てます。
システムの初期化後、一般的なプロセス・フローは次の基本ステップに従います。
- ミントデポジットトークン。
- トークン作成者は、
requestMintAPIを使用して、デポジット・トークンをミントするリクエストを送信します。 - 承認者は、
approveMintAPIを使用して、預入トークンをミントするリクエストを確認および承認します。預金トークンは、作成者の口座に貸方記入されます。または、承認者はrejectMintAPIを使用してリクエストを拒否できます。
- トークン作成者は、
- 預入トークンを発行者に転送します。
- 作成者は、
holdTokensAPIを使用して、発行者へのトークンの転送をリクエストします。 - 承認者は、
executeHoldTokensAPIを使用して転送リクエストを検証および承認します。預入トークンは、発行者のアカウントに転送されます。または、承認者はreleaseHoldAPIを使用して転送を拒否できます。
- 作成者は、
- ユーザーにトークンを発行します。
- 発行者は、ユーザーに
transferTokensAPIを使用します。預入トークンは、ユーザーのアカウントに対するクレジットです。
- 発行者は、ユーザーに
- トークンを書き込みます。
- ユーザーは、
burnTokensAPIを使用してデポジット・トークンを引き換えることができます。
- ユーザーは、
- トークンの残高を確認します。
- ユーザーは、
getAccountBalanceAPIを使用して、保有する預入トークンの合計数を取得できます。
- ユーザーは、