Troubleshoot the Wholesale CBDC Sample Application
You can manually enter account and token data if you lose data during the staging process.
The wholesale CBDC sample application stores account and token data in business objects in Oracle Visual Builder. Specifically, account details are stored in the AccountStatus business object and token details are stored in the EarmarkingList business object. When you stage the application for the first time, these business objects are empty. As you interact with the application by initializing tokens and creating accounts, data is saved to these business objects.
If you stage the application again and do not select Keep Existing Data in Stage, the business objects are reset. This can lead to data mismatches between the business objects and the ledger, which in turn can cause application malfunctions.
You can prevent this issue by backing up all stage data before you stage the application again, and by using the Data Manager tool in Oracle Visual Builder to export and import business object data between environments.
If you mistakenly select Stage Application with a Clean Database or Replace Stage Data with Development Data when re-staging the application, you must manually re-enter the account and token details by completing the following steps.
- Use the
getAllActiveAccountsandgetAllSuspendedAccountsendpoints in the wholesale CBDC Postman collection or the confidential wholesale CBDC Postman collection to get information about all accounts in the network. In confidential mode, you must call these endpoints separately for each organization, because you can retrieve account data only by organization. Compile the results to list all accounts across the network. - Populate the
AccountStatusbusiness object as described in the following tables.AccountStatus Field Source Field Notes bankAccountIDaccount_idbankNameorg_idbankStatusActiveif the information comes from thegetAllActiveAccountsendpoint,InActiveif the information comes from thegetAllSuspendedAccountsendpoint.bankTokenIDtoken_idbankUserIDuser_idbankUserRolerole_name, non_account_role_nameSee the following table for role mapping information. groupNameapplication_groupsuserRoleSee the following table for role mapping information. customAccountIdThe custom account ID euseridsEnrollment IDs that are associated with the user. Separate multiple enrollments with commas (,). Condition Value role_nameis null ANDnon_account_role_nameis emptyNO role_nameis null ANDnon_account_role_name=token_adminToken Admin role_nameis null ANDnon_account_role_name=org_adminOrg Admin role_nameis null ANDnon_account_role_name=token_auditorToken Auditor role_nameis null ANDnon_account_role_name=org_auditorOrg Auditor non_account_role_nameis empty ANDrole_nameis not nullThe value of role_name - Leave all other fields in the
AccountStatusbusiness object empty. - Use the
CurrencyCodeDetailsbusiness object to get information about tokens and populate theEarmarkingListbusiness object with this information, as described in the following table. You must re-enter information for all tokens that were previously initialized.EarmarkingList field Source Description Example currencyCodecurrencyNameinCurrencyCodeDetailsToken ID used by the wholesale CBDC application USD currencyStringcurrencyDescinCurrencyCodeDetailsToken description used by the wholesale CBDC application US Dollar earmarkingStringPurpose field entered when the token was initialized [user defined]