Blockchain-based fund asset control system for issuing vouchers

A blockchain-based solution to control and manage three-party (service provider / donor / end-customer) contractual engagements. The voucher issuance system incorporates smart contracts and automates document flow, reducing overheads for all parties involved.

Industry:

STPs Ecosystem

TRL:

1 → 9

Project duration:

6 months

Challenge

Tremendous resources are spent worldwide to manage and control third-party service providers. This process is even more difficult and complicated when any vendor or contractee uses grants and government subsidies to pay for delivered services to third parties. It requires a lot more effort and document circulation to comply with numerous norms, standards and regulations. 

Understanding this complex context, a startup approached EnCata with the desire to use advanced software to resolve the intricacies of working with grants and donor’s money with the goal of reducing time and money spent on maintaining document circulation.

Thus, the major challenges of this project were:

  • to develop and deploy a blockchain-based solution that enables smart-contracting on-the-fly;
  • to build an architecture that connects three layers of users: donors, contractors and subcontractors;
  • to provide users with secure verifiable transactions signing in the user interface;
  • to create tokens that can be one-to-one equal to the existing currency, however spent only within a given blockchain ecosystem.

Our Role

  • Requirements analysis
  • Concept development
  • Software development
  • Build blockchain architecture
  • Create smart contracts
  • Web application development

Technologies Used

Quorum Blockchain

Quorum Blockchain

Ethereum Web3.0 JS

Ethereum Web3.0 JS

Solidity

Solidity

Node.js

Node.js

Angular

Angular

MongoDB

EnCata offers comprehensive hardware and IoT product development services at a fraction of the cost

For Enterprises

R&D + design + manufacturing under ONE roof
Scale up and down your team
Intergrated hardware + software development
New technologies and research 

CORPORATIONS click HERE for more info

For Startups

MVP and POC prototypes
Affordable consultancy rates
All IP is yours
In-house batch production

STARTUPS click HERE for more info

Approach & Solution

Though government innovation funds have a mechanism to provide grants to SMEs and startups, the granting process is so slow and bureaucratic that a large number of grants are never utilized. The government innovation funds staff is generally afraid of being legally and personally responsible for releasing funds to unsuccessful projects (typical for an Eastern European culture in which there is no allowance for failure). Moreover, plenty of startups are unwilling to apply due to a burdensome grant application and management process (time-consuming with a high likelihood of overbearing audits). A better process of administering grants is needed.

In an effort to reduce the burden of administering grants, decrease fraud and increase the efficiency of startups/SMEs obtaining grant funding, EnCata has developed a blockchain-based fund asset control system for issuing vouchers. It aims to unify the grant application and management process by using a platform for the submission of grant applications, negotiating and executing contracts and invoicing and making payments.

Since a voucher is equivalent to proof of cash value and is not redeemable for cash, the anti-counterfeiting of vouchers is a very important issue. Therefore, preventing the transfer of vouchers is also a very important issue. Moreover, the relevant parties involved in the e-voucher system are more diverse than those involved in the general admission system, so mutual trust between groups is a key factor in the success of the e-voucher system.
Recently, an emerging technology, called blockchain, has brought many new opportunities to the industry. Blockchain technology achieves trust among parties and fault tolerance through cryptography and decentralized architecture. So far, very few related to e-ticket systems have used blockchain technology. Moreover, products using blockchain technology have not proposed system architecture for vouchers.

After determining all the requirements, our software engineers suggested implementing a smart contract system that is organized as a separate independent solution that contains all three-party interaction mechanics between the service provider, grantor and end-customer (startup). One of the challenges of the e-voucher system is the delayed delivery and activation caused by the delayed submission of beneficiary lists.

The independence and self-sufficiency of smart contracts allow third-party applications and interfaces to work directly with the designed blockchain and smart contract system without violating the data integrity and logic of working with the developed interface.

The initial work on this project involved product definition followed by a technical specific development. The following functionality was required:

Any user can enter the interface and create a wallet in the system. Each user is assigned a name, a crypto-wallet address, a secret key for signing transactions, an email address, and roles in the system.

To become connected to the system, the startup will need to leave an inquiry for financing on a fund's website and pass the validation.
After passing each stage of the examination, the startup becomes a competent participant in the system, where it gets to the first level of the project development cycle. 

Service providers can also offer their services by leaving the inquiry on a fund's website. After receiving the inquiry, the fund conducts a quality control examination of the service by sending its representatives to the production field.

After getting the official accreditation, the participants take their place in the system structure.

The process of adding new startups and service providers is continual and is conducted according to the number of approved inquiries. Any interested party can get its place in the system if it corresponds to the requirements and passes all stages of examination.

Every grant fund supervises its startups and service providers without having access to the system participants of other grant funds.

After getting to the system, the fund distributes governmental subsidies by means of inter-blockchain-based vouchers that equal one-to-one to a country’s currency.

When the startup appeals for financing, the fund provides it with a sum in local vouchers called enc local. It is programmed that a startup can spend this sum only for required services whose service providers have been accredited by the fund in its country according to the kind of activity. Appealing to service providers, the startup pays for the service and after the completion of the work, it leaves its review and rates the work. 

All transactions within the system are commission imposed. The amount of commission depends on the sum of transactions. Commission assets are spent on the ecosystem's maintenance and improvement. The process of actual money transition happens after the service provider accumulates a certain amount of enc local vouchers. Service providers apply to funds through the dialog box asking for bank transfers in national currency. The transfer will be conducted automatically after vouchers get to the crypto account. After the payment, three-sided contracts are formed automatically in order to regulate the legal relationships of the participants. Enc local vouchers cannot be considered as actual money, because they never leave the system and exist only as a means of control. 

In case a startup needs a particular service that is outside of the fund's ecosystem, it can obtain this remote service through the automated payment system. 

The system will exchange the internal vouchers into the international exchange vouchers, called enc, which equals one dollar. In this case, the executor will be the voucher system representative that will conduct exchange operations between local and international vouchers and fiat money.

During each operation, all documents are uploaded to the system in order to trace, if necessary, any activity at any given time. 

In this manner, funds, startups and accredited service providers create a fully open and transparent environment.


On the software side, we сreated the Quorum-based blockchain system and wrote smart contracts in the Solidity language. The back-end and front-end parts were written in the JavaScript language. MongoDB was used as the database. 

Decentralized nodes were configured to ensure the functioning of the blockchain infrastructure. The Web3.js library was connected to secure transaction transfer.

The system was implemented with three internal software interfaces: the interface for interaction between the backend and the database, the interface for interaction between the backend and the blockchain, and the interface for interaction between the frontend and the backend.

The interaction of the backend with the database is performed through queries to the database through the ORM. Backend interaction with the blockchain is executed by sending requests via the JSON-RPC protocol. The interaction between the frontend and the backend is achieved through requests to the backend via the HTTP protocol and in accordance with the REST API standard.

The benefits of such a system are:

Results

As a result, we provided the Customer with a system that allows the subcontractors to get paid by tokens while the grantee uses no real ‘cash’ in transactions for goods and services. Subcontractors, in turn, can exchange ‘tokens’ for ‘hard currency’ at the grant fund which issued the tokens. All the intermediate ‘token’ transactions between grantees and subcontractors proceed with smart contracts are stored and registered, leaving no loopholes for misuse of public money or grants. All this allows existing grant funds to cut their expenditure significantly and make the work much easier.

left-arrowBack to All Projects

Have a project to do? Reach out to EnCata team

Thank you! Your inquiry has been sent
Oops! Something went wrong... Try to reload this page and resubmit