Stablecoin契約方法

Stablecoin契約には、拡張ERC-20契約で利用可能なすべての方法と、stablecoinシナリオに固有のその他の方法が含まれています。

Stablecoinアセット・メソッド

Stablecoinアセットは拡張ERC-20標準に基づいており、その標準の一般的なメソッドをすべてサポートしています。一般的なERC-20メソッドの詳細は、「デジタル・アセットAPI」を参照してください。

ノート:

安定コイン契約では、executeHoldTokensメソッドの動作は汎用バージョンとは異なります。メソッドのstablecoinバージョンは、常に完全な保留金額を完了し、部分転送をサポートしていません。

アカウント・ポリシー・チェック方法

createOrupdateAccountPolicy
このメソッドは、指定されたアカウントのポリシーを作成または更新します。このメソッドは、指定された組織のToken AdminまたはOrg Adminのみがコールできます。
function createOrupdateAccountPolicy(
      AccountPolicyCheck calldata accountPolicyCheck
  ) external
パラメータ:
  • asset: AccountPolicyCheck struct– アカウント・ポリシー・パラメータを定義する構造体で、次のフィールドが含まれます。
    • accountPolicyId– getAccountPolicyIdForAddress()メソッドを使用して、ポリシーを作成するユーザーのアカウント・アドレスからこのIDを生成します。
    • kycCompliance– アカウントがKYC (Know Your Customer)要件を満たすかどうかを示す文字列値(trueまたはfalse)。
    • amlCompliance– アカウントがAML (Anti-Money Laundering)要件を満たすかどうかを示す文字列値(trueまたはfalse)。
    • riskScore– アカウントに関連付けられたリスク・スコアで、コンプライアンス評価に使用されます。
    • restrictionFlag– アカウントが制限付き転送の対象かどうかを示す文字列値(trueまたはfalse)。trueに設定すると、直接転送は転送制限バケット制限に従い、保留転送は最小の承認ポリシーしきい値に従います。
getAccountPolicyById
このメソッドは、指定されたポリシーIDのアカウント・ポリシー詳細を取得します。このメソッドは、指定した組織のToken AdminまたはToken Auditor、あるいはOrg AdminまたはOrg Auditorのみがコールできます。
function getAccountPolicyById(
        string calldata accountPolicyId
    ) external view 
パラメータ:
  • accountPolicyId: string– 一意のアカウント・ポリシーID。
deleteAccountPolicy
このメソッドは、指定されたポリシーIDのポリシーを削除します。このメソッドは、指定された組織のToken AdminまたはOrg Adminのみがコールできます。
function deleteAccountPolicy(string calldata accountPolicyId) public 
パラメータ:
  • accountPolicyId: string– 一意のアカウント・ポリシーID。

承認ポリシー・チェック方法

createOrupdateApprovalPolicy
このメソッドは、承認ポリシーを作成または更新します。このメソッドは、Token Adminのみがコールできます。
function createOrupdateApprovalPolicy(
        ApprovalPolicyCheck calldata approvalPolicyCheck
    ) external
パラメータ:
  • asset: ApprovalPolicyCheck struct– トランザクションの承認ルールを定義する構造体で、次のフィールドが含まれます。
    • approvalPolicyId– 一意の承認ポリシーID。
    • transactionLowerLimit– 承認ポリシーが適用される最小トランザクション量。
    • transactionUpperLimit– 承認ポリシーが適用される最大トランザクション量。
    • numberOfApprovalsRequired– トランザクションを完了するために必要な承認の合計数。
    • approverDetails– 承認者のリストとその承認順序。承認の必須順序を定義します。
getApprovalPolicyById
このメソッドは、指定されたポリシーIDの承認ポリシー詳細を取得します。このメソッドは、Token AdminまたはToken Auditorのみがコールできます。
function getApprovalPolicyById(
        string calldata approvalPolicyId
    ) external
パラメータ:
  • approvalPolicyId: string– 一意の承認ポリシーID。
deleteApprovalPolicy
このメソッドは、指定されたポリシーIDの承認ポリシーを削除します。このメソッドは、Token Adminのみがコールできます。
function deleteApprovalPolicy(string calldata approvalPolicyId) public
パラメータ:
  • approvalPolicyId: string– 一意の承認ポリシーID。

承認トランザクション方法

getApprovalTransactionsById
このメソッドは、指定されたトランザクションIDの承認トランザクションを取得します。このメソッドは、Token AdminまたはToken Auditorのみがコールできます。
function getApprovalTransactionsById(
        string calldata opId
    )
パラメータ:
  • opId: string– 承認トランザクションID。
getApprovalStatusByOperationId
このメソッドは、指定されたトランザクションIDの承認トランザクションを取得します。このメソッドは、Token AdminまたはToken Auditorのみがコールできます。
function getApprovalStatusByOperationId(
        string calldata opId
    )
パラメータ:
  • opId: string– 一意の操作ID。
approveTransaction
承認者は、この方法を使用して保留トランザクションを承認できます。
function approveTransaction(string calldata opId, uint256 amount) public
パラメータ:
  • opId: string– 一意の操作ID。
  • amount: uint256– 転送用に承認する保留中トークンの数。

転送制限方法

転送制限を使用して、トークン転送に許可される最小および最大トランザクション金額を制御できます。転送制限は、アカウントのrestrictionFlag値がtrueに設定されている場合に適用されます。転送制限は、保留操作に使用される承認ポリシー・ルールとは独立して動作します。TransferRestrictionアセットは、転送制限が有効になっているすべてのアカウントに適用されるグローバルな下限および上限転送制限を設定します。契約がデプロイされた後、管理者は次の方法を使用してこれらの値を取得または更新できます。

setOrupdateTransferRestriction
このメソッドは、新しい下限および上限トランザクション制限を設定することで、転送制限構成を設定または更新します。このメソッドは、Token Adminのみがコールできます。
 function setOrupdateTransferRestriction(
        uint256 transactionLowerLimit,
        uint256 transactionUpperLimit
    ) external
パラメータ:
  • transactionLowerLimit– 最小許容転送量。
  • transactionUpperLimit– 特別なガバナンスなしで処理できる最大許容転送量。
getTransferRestriction
このメソッドは、トランザクション制限の下限と上限を含む、現在の転送制限構成を返します。このメソッドは、Token AdminまたはToken Auditorのみがコールできます。
function getTransferRestriction() external
パラメータ:
  • なし