Digital contract platform using Quorum blockchain and Solidity smart contracts to create, store, sign client contracts and record the history of changes
The project’s goals were to develop a fast and remote database using blockchain technology that would store client contract data and history, protecting it from unauthorized access and modification. Blockchain is the perfect solution, because the moment the client signs the contract, this information, and any other adjustments will be made public on the blockchain, preventing any one party from altering contracts without proper authorization.
Blockchain system architecture augments Kazakhtelecom’s CRM system and creates a transparent, secure and very efficient way for the company to communicate with clients and provide them with telecom services.
Kazakhtelecom is the largest telecom provider and national operator in Kazakhstan. It consistently holds the highest positions among the most profitable enterprises in the country with an annual turnover of tens of millions USD.
The company owns the National Information Superhighway, a fiber-optic ring connecting the largest cities of Kazakhstan and providing digital streams with a high data transmission rate.
Kazakhtelecom used digital contracts and online agreement forms stored on internal centralized databases. This prevented the company’s clients from having access to vital information and history of changes, leaving room for misunderstandings and possible disagreements, a low level of transparency and trust in the company’s organizational processes.
For blockchain implementation we chose Quorum, an institutional framework backed by JP Morgan Chase, having a modified Ethereum core and full support for Solidity smart contracts. It uses a modified consensus for internal (non-public) projects, as well as a mechanism for dividing data into private and public, which allowed us to provide access and verification of public data to users outside Kazakhtelecom company.
Due to the fact that Kazakhtelecom required to retain its current business infrastructure, we needed to implement an API to communicate between our client’s current system and the developed blockchain digital contract platform architecture. For these purposes, we used the OAuth 2.0 protocol with Refresh tokens.
Further integration of the new blockchain system was to be carried out by Kazakhtelecom using documentation prepared and provided by PixelPlex.
The overall system’s user flow after partial integration (via API) of our blockchain platform into the company’s business processes, is as described below.
Digital contracts are represented by smart contracts on the blockchain, containing information about the contract itself, the supplement agreement, the client with whom the contract is concluded, information on its status and any additional information necessary.
Supplement agreements go through the same process and are created based on the generated client contract, holding data on the required services to be provided, and any other special conditions.
Client registration data storage on the blockchain
Digital contract generation and storage on the blockchain
Making changes to contracts and recording the history of changes on the blockchain
Client's ability to view their contract and the history of changes
Digital contract signature using the client's private key