Méthodes de code chaîne Stablecoin

Le code chaîne stablecoin inclut toutes les méthodes TypeScript disponibles dans le code chaîne générique Token Taxonomy Framework et des méthodes TypeScript supplémentaires spécifiques au scénario stablecoin.

Méthodes d'actif Stablecoin

La ressource stablecoin est basée sur la norme étendue Token Taxonomy Framework et prend en charge toutes les méthodes génériques pour cette norme. Pour plus d'informations sur les méthodes génériques de structure de taxonomie de jeton, reportez-vous à Projet échafaudé TypeScript pour Token Taxonomy Framework dans Blockchain App Builder for Oracle Blockchain Platform.

Remarques :

Dans le code chaîne stablecoin, la méthode executeHoldTokens se comporte différemment de la version générique. La version stablecoin de la méthode complète toujours le montant total du blocage et ne prend pas en charge les transferts partiels.

Méthodes de vérification de stratégie de compte

createAccountPolicyCheck
Cette méthode crée une stratégie pour un compte spécifié. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
createAccountPolicyCheck(asset: AccountPolicyCheck)
Paramètres :
  • asset: AccountPolicyCheck class : classe qui définit les paramètres de stratégie de compte, qui inclut les champs suivants :
    • accountPolicyId : le système génère cet ID à partir des champs orgId et userId spécifiés. Vous ne renseignez pas ce champ manuellement.
    • orgId : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur pour lequel créer la stratégie.
    • userId : nom utilisateur ou ID de courriel de l'utilisateur pour lequel créer la stratégie.
    • kycCompliance : valeur booléenne indiquant si le compte satisfait aux exigences de KYC (Know Your Customer).
    • amlCompliance : valeur booléenne indiquant si le compte satisfait aux exigences de lutte contre le blanchiment d'argent.
    • riskScore – Score de risque associé au compte, utilisé pour l'évaluation de la conformité.
    • restrictionFlag : valeur booléenne indiquant si le compte fait l'objet de transferts restreints. Si la valeur est true, seuls les transferts dont le seuil de stratégie d'approbation est le plus bas sont autorisés.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "false"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
getAccountPolicyCheckById
Cette méthode obtient les détails de la stratégie de compte pour un ID de stratégie spécifié. Cette méthode peut être appelée uniquement par un élément Token Admin ou Token Auditor, ou par un élément Org Admin ou Org Auditor de l'organisation indiquée.
getAccountPolicyCheckById(id: string)
Paramètres :
  • id: string : ID de stratégie de compte unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "false"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
updateAccountPolicyCheck
Cette méthode met à jour la stratégie pour un compte spécifié. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
updateAccountPolicyCheck(asset: AccountPolicyCheck)
Paramètres :
  • asset: AccountPolicyCheck class : classe qui définit les paramètres de stratégie de compte, qui inclut les champs suivants :
    • accountPolicyId : ID de stratégie de compte unique.
    • orgId : ID du fournisseur de services d'adhésion (MSP) de l'utilisateur pour lequel créer la stratégie.
    • userId : nom utilisateur ou ID de courriel de l'utilisateur pour lequel créer la stratégie.
    • kycCompliance : valeur booléenne indiquant si le compte satisfait aux exigences de KYC (Know Your Customer).
    • amlCompliance : valeur booléenne indiquant si le compte satisfait aux exigences de lutte contre le blanchiment d'argent.
    • riskScore – Score de risque associé au compte, utilisé pour l'évaluation de la conformité.
    • restrictionFlag : valeur booléenne indiquant si le compte fait l'objet de transferts restreints. Si la valeur est true, seuls les transferts dont le seuil de stratégie d'approbation est le plus bas sont autorisés.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
        "payload": {
            "assetType": "AccountPolicyCheck",
            "accountPolicyId": "APID~CentralBank~cb__creator_demo",
            "orgId": "CentralBank",
            "userId": "cb__creator_demo",
            "kycCompliance": "true",
            "amlCompliance": "true",
            "riskScore": 1000,
            "restrictionFlag": "true"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 272
    }
}
deleteAccountPolicyCheck
Cette méthode supprime la stratégie pour un ID de stratégie spécifié. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
deleteAccountPolicyCheck(id: string)
Paramètres :
  • id: string : ID de stratégie de compte unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5499f49ae8595facbcbf56835bed9e6606875c0f54fd3cacb31a4104b56d3579",
        "payload": {
            "isValid": true,
            "message": "Successfully deleted asset with ID [APID~CentralBank~cb__creator_demo] from ledger"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 273
    }
}
getAccountPolicyCheckHistoryById
Cette méthode obtient l'historique complet des stratégies de compte pour un ID de stratégie spécifié. Cette méthode peut être appelée uniquement par un élément Token Admin ou Token Auditor, ou par un élément Org Admin ou Org Auditor de l'organisation indiquée.
getAccountPolicyCheckHistoryById(id: string)
Paramètres :
  • id: string : ID de stratégie de compte unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "trxId": "dbfd34199bc5ea7224ca6c9976e30166dc859923ab044e595d0d42ad842eb471",
                "timeStamp": "2025-11-20T21:36:29.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "true"
                }
            },
            {
                "trxId": "8b6951a4093f3bb79a489397878f9025ce4384c8973a0c4d0ec9c618667e8935",
                "timeStamp": "2025-11-20T21:35:34.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "false"
                }
            },
            {
                "trxId": "5499f49ae8595facbcbf56835bed9e6606875c0f54fd3cacb31a4104b56d3579",
                "timeStamp": "2025-11-20T21:34:03.000Z",
                "value": "KEY DELETED"
            },
            {
                "trxId": "02875ca9c6a7408da3f81156214228b91b09c4bb2b8026d7a5733b53598c6635",
                "timeStamp": "2025-11-20T21:33:24.000Z",
                "value": {
                    "assetType": "AccountPolicyCheck",
                    "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                    "orgId": "CentralBank",
                    "userId": "cb__creator_demo",
                    "kycCompliance": "true",
                    "amlCompliance": "true",
                    "riskScore": 1000,
                    "restrictionFlag": "false"
                }
            }
        ],
        "encode": "JSON"
    }
}
getAccountPolicyCheckByRange
Cette méthode obtient tout l'historique des stratégies pour une plage d'ID de stratégie spécifiée. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
getAccountPolicyCheckByRange(startId: string, endId: string)
Paramètres :
  • startId: string : ID de stratégie de compte de début de la plage (inclus).
  • endId: string : ID de stratégie de compte de fin de la plage (exclusif).
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "assetType": "AccountPolicyCheck",
                "accountPolicyId": "APID~CentralBank~cb__creator_demo",
                "orgId": "CentralBank",
                "userId": "cb__creator_demo",
                "kycCompliance": "true",
                "amlCompliance": "true",
                "riskScore": 1000,
                "restrictionFlag": "true"
            },
            {
                "assetType": "AccountPolicyCheck",
                "accountPolicyId": "APID~CentralBank~cb_issuer_demo",
                "orgId": "CentralBank",
                "userId": "cb_issuer_demo",
                "kycCompliance": "true",
                "amlCompliance": "true",
                "riskScore": 1000,
                "restrictionFlag": "false"
            }
        ],
        "encode": "JSON"
    }
}

Méthodes de contrôle de la stratégie d'approbation

createApprovalPolicyCheck
Cette méthode crée une stratégie d'approbation. Cette méthode ne peut être appelée que par Token Admin.
createApprovalPolicyCheck(asset: ApprovalPolicyCheck)
Paramètres :
  • asset: ApprovalPolicyCheck class : classe qui définit les règles d'approbation pour une transaction, qui inclut les champs suivants :
    • approvalPolicyId : le système génère cet ID. Vous ne renseignez pas ce champ manuellement.
    • transactionLowerLimit – Montant de transaction minimum auquel la stratégie d'approbation s'applique.
    • transactionUpperLimit : montant de transaction maximal auquel la stratégie d'approbation s'applique.
    • numberOfApprovalsRequired : nombre total d'approbations nécessaires pour que la transaction puisse être terminée.
    • approverDetails : liste des approbateurs avec la séquence d'approbation qui leur est affectée, qui définit l'ordre obligatoire pour les approbations.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "3a5701ca90ffb98832421c7d5377eb9c0df9fdab30a0a3ce06216808bdea098e",
        "payload": {
            "status": "active",
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~500~1000",
            "transactionLowerLimit": "500",
            "transactionUpperLimit": "1000",
            "numberOfApprovalsRequired": 2,
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                },
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "creator",
                    "approvalSequence": 2
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 284
    }
}
getApprovalPolicyCheckById
Cette méthode obtient les détails de la stratégie d'approbation pour un ID de stratégie spécifié. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
getApprovalPolicyCheckById(id: string)
Paramètres :
  • id: string : ID de stratégie d'approbation unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~0~100",
            "transactionLowerLimit": "0",
            "transactionUpperLimit": "100",
            "numberOfApprovalsRequired": 0,
            "approverDetails": []
        },
        "encode": "JSON"
    }
}
updateApprovalPolicyCheck
Cette méthode met à jour la stratégie d'approbation. Cette méthode ne peut être appelée que par Token Admin.
updateApprovalPolicyCheck(asset: ApprovalPolicyCheck)
Paramètres :
  • asset: ApprovalPolicyCheck class : classe qui définit les règles d'approbation pour une transaction, qui inclut les champs suivants :
    • approvalPolicyId : ID de stratégie d'approbation unique.
    • transactionLowerLimit – Montant de transaction minimum auquel la stratégie d'approbation s'applique.
    • transactionUpperLimit : montant de transaction maximal auquel la stratégie d'approbation s'applique.
    • numberOfApprovalsRequired : nombre total d'approbations nécessaires pour que la transaction puisse être terminée.
    • approverDetails : liste des approbateurs avec la séquence d'approbation qui leur est affectée, qui définit l'ordre obligatoire pour les approbations.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "ed1e1950fe02dbab74fa3aa7630b8dc6096e30aae5c81bab0dd22d5232c44fc9",
        "payload": {
            "status": "active",
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~500~1000",
            "transactionLowerLimit": "500",
            "transactionUpperLimit": "1000",
            "numberOfApprovalsRequired": 1,
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 285
    }
}
deleteApprovalPolicyCheck
Cette méthode supprime la stratégie d'approbation pour un ID de stratégie spécifié. Cette méthode ne peut être appelée que par Token Admin.
deleteApprovalPolicyCheck(id: string)
Paramètres :
  • id: string : ID de stratégie d'approbation unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5ac54d3279a183022a00495aee3c25c2893388ff9aaaecd5c3b594edfa49ad8f",
        "payload": {
            "isValid": true,
            "message": "Successfully deleted asset with ID [GPID~500~1000] from ledger"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20009",
        "blockNumber": 286
    }
}
getApprovalPolicyCheckHistoryById
Cette méthode obtient l'historique complet des stratégies d'approbation pour un ID de stratégie spécifié. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
getApprovalPolicyCheckHistoryById(id: string)
Paramètres :
  • id: string : ID de stratégie d'approbation unique.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "trxId": "48f196c18869e871dc92ab880933ccc1c4dc402b9753ae6270e223646c177090",
                "timeStamp": "2025-11-21T09:30:04.000Z",
                "value": {
                    "assetType": "ApprovalPolicyCheck",
                    "approvalPolicyId": "GPID~0~100",
                    "transactionLowerLimit": "0",
                    "transactionUpperLimit": "100",
                    "numberOfApprovalsRequired": 0,
                    "approverDetails": []
                }
            }
        ],
        "encode": "JSON"
    }
}
getApprovalPolicyCheckByRange
Cette méthode obtient l'historique de toutes les stratégies d'approbation pour une plage d'ID de stratégie spécifiée. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
getApprovalPolicyCheckByRange(startId: string, endId: string)
Paramètres :
  • startId: string : ID de stratégie d'approbation de début de la plage (inclus).
  • endId: string : ID de stratégie d'approbation de fin de la plage (exclusif).
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": [
            {
                "assetType": "ApprovalPolicyCheck",
                "approvalPolicyId": "GPID~0~100",
                "transactionLowerLimit": "0",
                "transactionUpperLimit": "100",
                "numberOfApprovalsRequired": 0,
                "approverDetails": []
            },
            {
                "status": "active",
                "assetType": "ApprovalPolicyCheck",
                "approvalPolicyId": "GPID~500~1000",
                "transactionLowerLimit": "500",
                "transactionUpperLimit": "1000",
                "numberOfApprovalsRequired": 2,
                "approverDetails": [
                    {
                        "approverOrgId": "CentralBank",
                        "approverUserId": "manager",
                        "approvalSequence": 1
                    },
                    {
                        "approverOrgId": "CentralBank",
                        "approverUserId": "creator",
                        "approvalSequence": 2
                    }
                ]
            }
        ],
        "encode": "JSON"
    }
}

Méthodes de transaction d'approbation

getApprovalTransactionById
Cette méthode extrait la transaction d'approbation pour un code transaction donné. Cette méthode ne peut être appelée que par un élément Token Admin ou Org Admin de l'organisation indiquée.
getApprovalTransactionsById(id: string)
Paramètres :
  • id: string : ID généré par le système de la transaction d'approbation.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "ApprovalTransactions",
            "approvalTransactionId": "hold1~oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "approvalOperationId": "hold1",
            "fromAccountId": "oaccount~374e4e762940fc185c7cd5b6528c7f94985b6c56acf46abb746de6381589edd2",
            "toAccountId": "oaccount~79c427e614530eacad6fb07cff6048f6b96283e65019301320c9684932846f64",
            "approverAccountId": "oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "totalApprovals": 1,
            "timestamp": "2025-11-21T12:32:43.000Z"
        },
        "encode": "JSON"
    }
}

Méthodes personnalisées

getApproverDetailsByTransferAmount
Cette méthode extrait les détails de l'approbateur requis pour un montant de transfert donné. Cette méthode ne peut être appelée que par Token Admin ou Token Auditor.
getApproverDetailsByTransferAmount(Amount: number)
Paramètres :
  • amount: number – Montant du transfert.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "5874105c14abd67e68cb4dacf82f2a2dca6cc9da4f5b27fcc91c83a60b7249e1",
        "payload": {
            "approverDetails": [
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "manager",
                    "approvalSequence": 1
                },
                {
                    "approverOrgId": "CentralBank",
                    "approverUserId": "creator",
                    "approvalSequence": 2
                }
            ]
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 292
    }
}
approveTransaction
Un approbateur peut utiliser cette méthode pour approuver une transaction de blocage.
approveTransaction(token_id: string, operation_id: string, quantity: number)
Paramètres :
  • token_id: string : ID du jeton.
  • operation_id: string : ID unique permettant d'identifier l'opération de blocage. En général, cet ID est transmis par l'application client.
  • quantity: number : nombre de jetons bloqués à approuver pour le transfert.
Exemple de valeur renvoyée :
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "txid": "44685b0ff1b0ee72d57cb62900aae30638d65c82f264d5de7b28375732171702",
        "payload": {
            "assetType": "ApprovalTransactions",
            "approvalTransactionId": "hold1~oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "approvalOperationId": "hold1",
            "fromAccountId": "oaccount~374e4e762940fc185c7cd5b6528c7f94985b6c56acf46abb746de6381589edd2",
            "toAccountId": "oaccount~79c427e614530eacad6fb07cff6048f6b96283e65019301320c9684932846f64",
            "approverAccountId": "oaccount~1cf5d40c7ea7b9dceedfc66292ab843c1583564c3ecaf9f5ceb11f834018b02f",
            "totalApprovals": 1,
            "timestamp": "2025-11-21T12:32:43.000Z"
        },
        "encode": "JSON",
        "sourceURL": "centralbank-oabcs1-nrt.blockchain.ocp.example.com:20010",
        "blockNumber": 289
    }
}