Deploy and Test Wrapper APIs for Wholesale CBDC
Deploying the Wrapper API Package
Before you can deploy the wrapper API package, you must update the required configuration variables. Some configuration variables have default values, but you must manually update any variable that contains a placeholder as its default value. Configuration variables are stored in the terraform.tfvars file in the wrapper API archive. For more information about deploying wrapper APIs and about configuration variables, see Wrapper APIs in Blockchain App Builder for Oracle Blockchain Platform. The following table lists the configuration variables and their default values for the wholesale CBDC wrapper API package. If the default value contains placeholders, it indicates that the user must manually provide the necessary values.
| Variable name | Default value | Description |
|---|---|---|
compartment_ocid |
<compartment_ocid> |
The OCID of the compartment in Oracle Cloud Infrastructure (OCI). |
compartment_name |
<compartment_name> |
The name of the OCI compartment. |
identity_domain |
<identity_domain> |
The identity domain to use. |
blockchain_channel |
<blockchain_channel> |
The name of the Oracle Blockchain Platform channel where the chaincode is deployed. |
blockchain_url |
<blockchain_url> |
The Oracle Blockchain Platform URL associated with the chaincode deployment. |
blockchain_chaincode |
WholesaleCBDC |
The name of the chaincode to generate wrapper APIs for. |
blockchain_sync |
true |
The sync value to include in the payload for API calls. |
blockchain_timeout |
6000 |
The timeout value to include in the payload for API calls. |
vcn_display_name |
WholesaleCBDC |
The display name of the OCI virtual cloud network. |
application_display_name |
WholesaleCBDC |
The display name of the OCI application. |
gateway_display_name |
WholesaleCBDC |
The display name of API Gateway. |
deployment_display_name |
WholesaleCBDC |
The display name of the deployment in API Gateway. |
deployment_path_prefix |
/WholesaleCBDC |
The deployment path prefix in API Gateway, which specifies the path where routes are deployed. The deployment_path_prefix variable must begin with a slash (/).
|
ocir_repo_name |
wholesalecbdc |
The OCI Registry repository name. The ocir_repo_name variable must be all lowercase letters.
|
policy_name |
WholesaleCBDC |
The name of the policy that enables controlled management and access to APIs through defined permissions for groups and compartments in the organization |
For information about the Postman collection, see Wrapper API Package Components in Blockchain App Builder for Oracle Blockchain Platform.
Wholesale CBDC Sample Process Flow
A typical process flow using the wholesale CBDC wrapper APIs follows these basic steps.- The administrator uses the
initializeCBDCTokenAPI to initialize the wholesale CBDC system. - The administrator uses the
createAccountandassociateTokenToAccountAPIs to create accounts and associate the token to accounts for all creators, central bank approvers, issuers, financial institution officers, financial institution approvers, and financial institution users in the system. - The administrator uses the
addRoleAPI to assign the minter role to the creator and the notary role to the central bank approver. - The token creator uses the
requestCBDCCreationAPI to submit a request to mint currency. - The central bank approver uses the
approveCBDCCreationAPI review and approve the request to mint currency. The currency is credited to the creator's account. - The issuer uses the
getCBDCAccountBalanceAPI to verify that the credited amount is accurate. - The creator uses the
transferCBDCTokensAPI to transfer the currency to the issuer. - The
holdCBDCTokensAPI is used to start the transfer of currency to a financial institution officer. - The central bank approver uses the
approveHoldCBDCTokensAPI to approve the transfer of currency to the financial institution officer. The currency is credited to the financial institution officer's account. - The financial institution officer uses the
getCBDCAccountBalanceAPI to verify that the credited amount is accurate. - The financial institution officer uses the
holdCBDCTokensAPI to start the transfer of currency to a financial institution user. - The financial institution approver uses the
approveHoldCBDCTokensAPI to approve the transfer of currency to the financial institution user. The currency is credited to the financial institution user's account. - The financial institution user uses the
getCBDCAccountBalanceAPI to verify that the credited amount is accurate.
Postman Collection
The Postman collection in the wholesale CBDC wrapper API package includes additional attributes and APIs that support the wholesale CBDC chaincode. For more information, see Wrapper API Package Components in Blockchain App Builder for Oracle Blockchain Platform.