Metodi del codice concatenato di Stablecoin

Il codice concatenato stablecoin include tutti i metodi TypeScript disponibili nel codice concatenato generico Token Taxonomy Framework e altri metodi TypeScript specifici dello scenario stablecoin.

Metodi asset Stablecoin

L'asset stablecoin si basa sullo standard Extended Token Taxonomy Framework e supporta tutti i metodi generici per tale standard. Per ulteriori informazioni sui metodi generici Token Taxonomy Framework, vedere Scaffolded TypeScript Project for Token Taxonomy Framework in Blockchain App Builder for Oracle Blockchain Platform.

Nota

Nel codice concatenato 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

createAccountPolicyCheck
Questo metodo crea un criterio per un account specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
createAccountPolicyCheck(asset: AccountPolicyCheck)
Parametri:
  • asset: AccountPolicyCheck class: classe che definisce i parametri dei criteri account, che include i campi riportati di seguito.
    • accountPolicyId: questo ID viene generato dai campi orgId e userId specificati. Questo campo non viene fornito manualmente.
    • orgId: l'ID MSP (Membership Service Provider) dell'utente per cui creare la polizza.
    • userId: il nome utente o l'ID e-mail dell'utente per il quale creare il criterio.
    • kycCompliance: valore booleano che indica se l'account soddisfa i requisiti KYC (Know Your Customer).
    • amlCompliance: valore booleano 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 booleano che indica se il conto è soggetto a trasferimenti limitati. Se impostato su true, sono consentiti solo i trasferimenti entro la soglia minima dei criteri di approvazione.
Esempio di valore restituito:
{
    "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
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.
getAccountPolicyCheckById(id: string)
Parametri:
  • id: string: l'ID criterio account univoco.
Esempio di valore restituito:
{
    "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
Questo metodo aggiorna il criterio per un account specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
updateAccountPolicyCheck(asset: AccountPolicyCheck)
Parametri:
  • asset: AccountPolicyCheck class: classe che definisce i parametri dei criteri account, che include i campi riportati di seguito.
    • accountPolicyId: l'ID criterio account univoco.
    • orgId: l'ID MSP (Membership Service Provider) dell'utente per cui creare la polizza.
    • userId: il nome utente o l'ID e-mail dell'utente per il quale creare il criterio.
    • kycCompliance: valore booleano che indica se l'account soddisfa i requisiti KYC (Know Your Customer).
    • amlCompliance: valore booleano 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 booleano che indica se il conto è soggetto a trasferimenti limitati. Se impostato su true, sono consentiti solo i trasferimenti entro la soglia minima dei criteri di approvazione.
Esempio di valore restituito:
{
    "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
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.
deleteAccountPolicyCheck(id: string)
Parametri:
  • id: string: l'ID criterio account univoco.
Esempio di valore restituito:
{
    "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
Questo metodo recupera la cronologia completa 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.
getAccountPolicyCheckHistoryById(id: string)
Parametri:
  • id: string: l'ID criterio account univoco.
Esempio di valore restituito:
{
    "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
Questo metodo recupera tutta la cronologia dei criteri per un intervallo specificato di ID criteri. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
getAccountPolicyCheckByRange(startId: string, endId: string)
Parametri:
  • startId: string: l'ID criterio dell'account iniziale dell'intervallo (incluso).
  • endId: string: l'ID criterio dell'account finale dell'intervallo (escluso).
Esempio di valore restituito:
{
    "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"
    }
}

Metodi di controllo criteri di approvazione

createApprovalPolicyCheck
Questo metodo crea un criterio di approvazione. Questo metodo può essere chiamato solo da un Token Admin.
createApprovalPolicyCheck(asset: ApprovalPolicyCheck)
Parametri:
  • asset: ApprovalPolicyCheck class: classe che definisce le regole di approvazione per una transazione, che include i campi riportati di seguito.
    • approvalPolicyId: questo ID viene generato dal sistema. Questo campo non viene fornito manualmente.
    • 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.
Esempio di valore restituito:
{
    "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
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 Org Admin dell'organizzazione specificata.
getApprovalPolicyCheckById(id: string)
Parametri:
  • id: string: ID univoco del criterio di approvazione.
Esempio di valore restituito:
{
    "returnCode": "Success",
    "error": "",
    "result": {
        "payload": {
            "assetType": "ApprovalPolicyCheck",
            "approvalPolicyId": "GPID~0~100",
            "transactionLowerLimit": "0",
            "transactionUpperLimit": "100",
            "numberOfApprovalsRequired": 0,
            "approverDetails": []
        },
        "encode": "JSON"
    }
}
updateApprovalPolicyCheck
Questo metodo aggiorna il criterio di approvazione. Questo metodo può essere chiamato solo da un Token Admin.
updateApprovalPolicyCheck(asset: ApprovalPolicyCheck)
Parametri:
  • asset: ApprovalPolicyCheck class: classe che definisce le regole di approvazione per una transazione, che include i campi riportati di seguito.
    • 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.
Esempio di valore restituito:
{
    "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
Questo metodo elimina il criterio di approvazione per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin.
deleteApprovalPolicyCheck(id: string)
Parametri:
  • id: string: ID univoco del criterio di approvazione.
Esempio di valore restituito:
{
    "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
Questo metodo recupera la cronologia completa dei criteri di approvazione per un ID criterio specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
getApprovalPolicyCheckHistoryById(id: string)
Parametri:
  • id: string: ID univoco del criterio di approvazione.
Esempio di valore restituito:
{
    "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
Questo metodo recupera tutta la cronologia dei criteri di approvazione per un intervallo specificato di ID criteri. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
getApprovalPolicyCheckByRange(startId: string, endId: string)
Parametri:
  • startId: string: ID del criterio di approvazione iniziale dell'intervallo (incluso).
  • endId: string: ID del criterio di approvazione finale dell'intervallo (escluso).
Esempio di valore restituito:
{
    "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"
    }
}

Metodi transazioni approvazione

getApprovalTransactionById
Questo metodo recupera la transazione di approvazione per un ID transazione specificato. Questo metodo può essere chiamato solo da un Token Admin o Org Admin dell'organizzazione specificata.
getApprovalTransactionsById(id: string)
Parametri:
  • id: string: l'ID generato dal sistema della transazione di approvazione.
Esempio di valore restituito:
{
    "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"
    }
}

Metodi personalizzati

getApproverDetailsByTransferAmount
Questo metodo recupera i dettagli dell'approvatore necessari per un determinato importo di trasferimento. Questo metodo può essere chiamato solo da un Token Admin o Token Auditor.
getApproverDetailsByTransferAmount(Amount: number)
Parametri:
  • amount: number – L'importo del trasferimento.
Esempio di valore restituito:
{
    "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 approvatore può utilizzare questo metodo per approvare una transazione di blocco.
approveTransaction(token_id: string, operation_id: string, quantity: number)
Parametri:
  • token_id: string: l'ID del token.
  • operation_id: string: ID univoco che identifica l'operazione di blocco. In genere questo ID viene passato dall'applicazione client.
  • quantity: number: il numero di token in sospeso da approvare per il trasferimento.
Esempio di valore restituito:
{
    "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
    }
}