On Monday, the Bank of Thailand released a 29-page report about its latest central bank digital currency (CBDC) trials. It developed a proof of concept (PoC) to enable corporates to use a digital baht for payments which integrated with the highly successful procure-to-pay solution (B2P) from the Siam Cement Group (SCG). The conclusion was that overall the experiment proved the potential benefits, but that performance is a concern and the technology is not ready for live production.
As a next step, the central bank plans to explore a more consumer-focused CBDC in 2021 and 2022.
The corporate payments PoC involved Siam Commercial Bank subsidiary Digital Ventures (DV), which was involved in the original development of the SCG procure to pay (B2P) solution. Ethereum development house ConsenSys provided technical support for the CBDC solution, which used the Hyperledger Besu enterprise blockchain.
Typically the B2P platform empowers suppliers to finance their invoices because the supplier has approved it. However, B2P only offers a limited selection of banks. Hence, integrating with a CBDC solution could potentially increase the range of banks beyond those that are B2P participants.
Most CBDC tests focus on distributing the digital currency via banks, using it for payments and destroying coins no longer needed. For this PoC, additionally it involved tokenizing invoices. The Ethereum-based CBDC blockchain had to interoperate with the B2P procure-to-pay solution that uses R3’s enterprise blockchain Corda. Plus, using smart contracts enabled conditional payments.
We had assumed that the only tokens would be CBDC money and the invoices. But to create programmable money, there was an additional step. The corporate would create custom tokens as programmable money, and these are matched by CBDC that they’ve paid for. So the custom tokens are transferred to the supplier as payment. When the condition in the custom tokens is met, it converts into CBDC and the custom token is burned.
The pros and cons
From previous discussions with trade finance platform we.trade, conditional payments are extremely attractive to small and medium sized businesses.
By tokenizing the invoices, potentially an invoice could be financed by multiple banks.
The P0C had six requirements to meet such as finality, interoperability and security, which it seemed happy with, although there was limited detail about the interoperability with Corda.
In terms of resiliency, it needed 66% of nodes to verify transactions. The PoC had five nodes, so it was okay if one node went offline. But if two disappeared, it would take some time to get the network up and running again.
When it came to privacy, it used Aztec, a Zero Knowledge Proof solution used by Besu for on-chain transactions. The paper states, “a higher level of privacy has a negative impact on overall system performance. As such, applying privacy settings to the overall system would need to be carefully considered further.”
In terms of scalability, it suggests not using more than 20 validating nodes, and if more are needed, they should rotate.
It used a ConsenSys Rollup solution. This is a layer two scaling approach that pushes much of the transaction processing off-chain. Rollups are an effective solution to the scaling challenge, and other Rollup solutions are soon to be used at scale on public Ethereum.
However, the Thai paper expressed reservations about Rollups. One is the additional complexity for developers. Also, the solution works by batching and waits until a batch is full. During quiet periods that could mean a long wait before the batch gets to the chain.
The paper also explored non-technical aspects such as how to provide incentives for banks to participate. And whether to vet corporates before they can join.
Other Bank of Thailand work
Meanwhile, the Bank of Thailand previously worked on Project Inthanon for an interbank CBDC trial that used R3’s Corda. Together with the Hong Kong Monetary Authority, it explored cross-border use of CBDC. More recently, the duo has been joined by the People’s Bank of China and the UAE’s central bank to trial a “Multiple Central Bank Digital Currency (m-CBDC) Bridge”.