blank Skip to main content


Reverse Engineering of an API: Business Benefits, Use Cases, and Best Practices



June 13th, 2024



Blockchain Technology for Winemaking: Fundraising and Authenticity Guarantee

The Apriorit team has worked with a winery startup on a smart contract ecosystem supporting two main goals: to get ICO funding and to implement a smart way to track and prove the authenticity of each bottle of produced craft wine.

This full-cycle project centered around blockchain technology. It began with a high-level client vision and took about five months to research, detail, and implement.


Client: <NDA protected name>

Our client is a European wine company whose goal is to enter the EU market with a new winery. The founder is a blockchain enthusiast who decided to look for ICO funding instead of traditional investment to build this new branch of his business. He also brought to the table an interesting idea of using blockchain technology to prove the origin of each wine bottle by tracking its path through each stage of production and delivery.

Project start

Armed with the vision of building a tech-winery startup, our client started to shortlist development teams. Among other candidates, Apriorit was chosen due to its research and business analysis capabilities, which would be required to specify, formalize, and plan the implementation of each stage of the project.

One more strong point of the Apriorit team was its security technology development and penetration testing capabilities, which would be needed to build and optimize a reliable, trustworthy smart contract ecosystem.

Detailing the idea

After clarifying our client’s business priorities and discussing several alternatives, it was decided that the project would enter the ICO with a limited number of tokens offered via private sale to a small number of investors.

The tricky part was developing a scheme for the accrual of dividends. The client’s original idea was to secure each token with real crates of wine. Our team researched the idea of securing each token with a specific production batch, but this scheme had a number of limitations both in terms of exchange operation and production logistics.

We came up with the idea of an intermediate unit: a specific coin. This coin would become a custom cryptocurrency that could be freely exchanged for some amount of wine. It was decided that all dividends for the traded tokens would be accrued in these wine coins, which could then be traded on popular cryptocurrency exchanges.

After the fundraising part was formalized, it was time to describe a unique bottle identifier token.

It was obvious that this token should be a custom smart contract to store various information (grape origin, composition, dates for each production step, aging and bottling details, distributor data, etc.). While the high-level idea was pretty clear, there was a lot of optimization work at the solution design stage. For example, it was decided to store full information about all bottle transactions in a database on the producer’s side and include only hash sums of the corresponding records in the smart contract to minimize the amount of stored data and optimize cost.

Selecting the platform

After all smart contract schemes were designed, it was time to select a platform on which to build smart contracts and cryptocurrency.

Our team gathered the client’s requirements and shortlisted platforms based on:

  1. Possibility of building custom smart contracts
  2. Popularity in target markets
  3. Cost of transactions
  4. Cost of issuing a custom cryptocurrency 

After analyzing these factors, our team and our client agreed on the Ethereum platform.


The project was naturally divided into two stages:

  1. Building ICO tokens and coins
  2. Building a custom smart contract for bottle identification together with applications to add necessary data (on the producer side) and validate/visualize that data (on the buyer side)

The first stage involved development of two smart contracts, one for a token targeting private ICO investors and another for public wine coins. We coded these in the Solidity language.

After initial implementation, Apriorit specialists performed intensive penetration testing of the contracts to detect and eliminate potential vulnerabilities.

The first stage took one developer-month and about ten days of work by a QA specialist, which included automated testing activities performed using the Truffle framework.

The second stage was dedicated to creating a smart system that guaranteed the authenticity of each bottle of wine. 

At this stage, one developer was implementing a custom smart contract, working closely with an Apriorit business analyst and the client’s team to discover and formalize all kinds of business information that had to be stored. Our team worked a lot on optimizing the smart contract to minimize the number and cost of calculations and thus reduce the total cost of transactions. The result is a highly optimized system that includes a database ecosystem for storing original documents with operational details and a smart contract with validation hash sums for each document transaction.

Once the blockchain scheme was developed, Apriorit specialists started to develop a desktop application allowing the vendor to enter all necessary transaction information into the system.

At this milestone, two more developers joined the team to develop buyer-side mobile apps for iOS and Android. These apps include augmented reality (AR) features that let customers visualize information about a bottle right in the wine shop. These features were created using a combination of the Unity and Vuforia frameworks.

The second stage took about four developer-months and one month’s worth of quality assurance, including mobile testing and automated testing activities.

Results at the current stage

For now, both stages of implementation have been completed and the client has successfully raised ICO funding. The team is waiting patiently for the wine producing facilities to be built.

Have a question?

Ask our expert!

Tell us about your project

Send us a request for proposal! We’ll get back to you with details and estimations.

By clicking Send you give consent to processing your data

Book an Exploratory Call

Do not have any specific task for us in mind but our skills seem interesting?

Get a quick Apriorit intro to better understand our team capabilities.

Book time slot

Contact us