穩定幣合約方式

穩定幣合約包括延長 ERC-20 合約中提供的所有方法,以及穩定幣案例專用的其他方法。

Stablecoin 資產方法

穩定幣資產是以延伸的 ERC-20 標準為基礎,並支援該標準的所有一般方法。如需有關一般 ERC-20 方法的詳細資訊,請參閱數位資產 API 。

備註:

在穩定的合約中,executeHoldTokens 方法與一般版本的行為不同。此方法的穩定版本一律會完成完整保留金額,且不支援部分轉移。

客戶保單檢查方法

createOrupdateAccountPolicy
此方法會建立或更新指定帳戶的原則。只有指定的組織之 Token Admin 或 Org Admin 才能呼叫此方法。
function createOrupdateAccountPolicy(
      AccountPolicyCheck calldata accountPolicyCheck
  ) external
參數:
  • asset: AccountPolicyCheck struct – 定義帳號策略參數的結構,包含下列欄位:
    • accountPolicyId – 使用 getAccountPolicyIdForAddress() 方法從使用者的帳戶地址產生此 ID,以建立原則。
    • kycCompliance – 字串值 (true 或 false),指出帳戶是否符合 KYC (瞭解您的客戶) 需求。
    • amlCompliance – 字串值 (true 或 false),指出帳戶是否符合 AML (反洗錢) 需求。
    • 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
參數:
  • 無