Metodi di contratto Stablecoin

Il contratto di stablecoin include tutti i metodi disponibili nel contratto ERC-20 esteso e metodi aggiuntivi specifici per lo scenario di stablecoin.

Metodi asset Stablecoin

L'asset stablecoin si basa sullo standard ERC-20 esteso e supporta tutti i metodi generici per tale standard. Per ulteriori informazioni sui metodi generici ERC-20, vedere API per gli asset digitali.

Nota:

Nel contratto stablecoin, il metodo executeHoldTokens si comporta in modo diverso rispetto alla versione generica. La versione stablecoin del metodo completa sempre l'intero importo di blocco e non supporta trasferimenti parziali.

Metodi di controllo polizza conto

createOrupdateAccountPolicy
Questo metodo crea o aggiorna un criterio per un account specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
function createOrupdateAccountPolicy(
      AccountPolicyCheck calldata accountPolicyCheck
  ) external
Parametri:
  • asset: AccountPolicyCheck struct: una struttura che definisce i parametri dei criteri dei conti, che include i seguenti campi:
    • accountPolicyId: utilizzare il metodo getAccountPolicyIdForAddress() per generare questo ID dall'indirizzo dell'account dell'utente per il quale creare il criterio.
    • kycCompliance: valore stringa (true o false) che indica se l'account soddisfa i requisiti KYC (Know Your Customer).
    • amlCompliance: valore stringa (true o false) che indica se il conto soddisfa i requisiti AML (Anti-Money Laundering).
    • riskScore: il punteggio di rischio associato all'account, utilizzato per la valutazione della conformità.
    • restrictionFlag: valore stringa (true o false) che indica se l'account è soggetto a trasferimenti limitati. Se impostato su true, i trasferimenti diretti seguono i limiti del periodo fisso delle restrizioni di trasferimento e i trasferimenti dei blocchi seguono la soglia dei criteri di approvazione più bassa.
getAccountPolicyById
Questo metodo recupera i dettagli dei criteri account per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor, o da un Org Admin o Org Auditor dell'organizzazione specificata.
function getAccountPolicyById(
        string calldata accountPolicyId
    ) external view 
Parametri:
  • accountPolicyId: string: l'ID criterio account univoco.
deleteAccountPolicy
Questo metodo elimina il criterio per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
function deleteAccountPolicy(string calldata accountPolicyId) public 
Parametri:
  • accountPolicyId: string: l'ID criterio account univoco.

Metodi di controllo criteri di approvazione

createOrupdateApprovalPolicy
Questo metodo crea o aggiorna un criterio di approvazione. Questo metodo può essere chiamato solo da un Token Admin.
function createOrupdateApprovalPolicy(
        ApprovalPolicyCheck calldata approvalPolicyCheck
    ) external
Parametri:
  • asset: ApprovalPolicyCheck struct: struttura che definisce le regole di approvazione per una transazione, che include i seguenti campi:
    • approvalPolicyId: ID univoco del criterio di approvazione.
    • transactionLowerLimit: l'importo minimo della transazione a cui si applica il criterio di approvazione.
    • transactionUpperLimit: l'importo massimo della transazione a cui si applica il criterio di approvazione.
    • numberOfApprovalsRequired: il numero totale di approvazioni necessarie prima del completamento della transazione.
    • approverDetails: elenco di approvatori insieme alla sequenza di approvazione assegnata, che definisce l'ordine obbligatorio per le approvazioni.
getApprovalPolicyById
Questo metodo recupera i dettagli dei criteri di approvazione per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor.
function getApprovalPolicyById(
        string calldata approvalPolicyId
    ) external
Parametri:
  • approvalPolicyId: string: ID univoco del criterio di approvazione.
deleteApprovalPolicy
Questo metodo elimina il criterio di approvazione per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin.
function deleteApprovalPolicy(string calldata approvalPolicyId) public
Parametri:
  • approvalPolicyId: string: ID univoco del criterio di approvazione.

Metodi transazioni approvazione

getApprovalTransactionsById
Questo metodo recupera la transazione di approvazione per un ID transazione specificato. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor.
function getApprovalTransactionsById(
        string calldata opId
    )
Parametri:
  • opId: string: ID della transazione di approvazione.
getApprovalStatusByOperationId
Questo metodo recupera la transazione di approvazione per un ID transazione specificato. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor.
function getApprovalStatusByOperationId(
        string calldata opId
    )
Parametri:
  • opId: string: ID univoco dell'operazione.
approveTransaction
Un approvatore può utilizzare questo metodo per approvare una transazione di blocco.
function approveTransaction(string calldata opId, uint256 amount) public
Parametri:
  • opId: string: ID univoco dell'operazione.
  • amount: uint256: il numero di token in sospeso da approvare per il trasferimento.

Metodi limitazione trasferimento

È possibile utilizzare le limitazioni di trasferimento per controllare gli importi transazione minimi e massimi consentiti per i trasferimenti di token. Le restrizioni di trasferimento vengono applicate quando un conto ha il valore restrictionFlag impostato su true. Le restrizioni di trasferimento operano indipendentemente dalle regole dei criteri di approvazione utilizzate per le operazioni di blocco. L'asset TransferRestriction imposta i limiti di trasferimento globali inferiore e superiore che si applicano a tutti i conti in cui sono abilitate le restrizioni di trasferimento. Dopo la distribuzione del contratto, gli amministratori possono recuperare o aggiornare questi valori utilizzando i metodi riportati di seguito.

setOrupdateTransferRestriction
Questo metodo imposta o aggiorna la configurazione delle restrizioni di trasferimento impostando nuovi limiti di transazione inferiore e superiore. Questo metodo può essere chiamato solo da un Token Admin.
 function setOrupdateTransferRestriction(
        uint256 transactionLowerLimit,
        uint256 transactionUpperLimit
    ) external
Parametri:
  • transactionLowerLimit: l'importo di trasferimento minimo consentito.
  • transactionUpperLimit: l'importo massimo di trasferimento consentito che può essere elaborato senza una governance speciale.
getTransferRestriction
Questo metodo restituisce la configurazione della restrizione di trasferimento corrente, inclusi i limiti di transazione inferiore e superiore. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor.
function getTransferRestriction() external
Parametri:
  • nessuno