Project Screenshot

Factrade

An online trading platform that meets the buying and selling requirements of commodity traders

  • The idea behind Factrade

    Kashika Aggarwal had an idea to create a platform that would keep commodity buyers and suppliers updated on industry trends and the latest prices for rice and other food crops. Information provided by the platform would enable platform participants to trade profitably and confidently.

    To develop the platform and put her idea into practice, Kashika Aggarwal approached the Steelkiwi team. 

  • Analysis

    Most companies trade commodities through brokers, which either have traders to execute deals or use a trading platform for placing trades electronically. It’s commonly believed that it’s easy to conduct business with brokers and brokerage firms. But this is only partially true. Brokers make trading easier for individuals who are new to the commodity market. But brokers aren’t able to provide adequate liquidity to suppliers or negotiation power to buyers, as a broker’s database of suppliers and buyers is limited.

    Factrade, on the other hand, empowers platform participants by providing an extensive history of trades among suppliers and buyers around the globe. Moreover, Factrade always provides reliable and precise price information and enables suppliers and buyers to enjoy the security of a transparent market.

  • Solution

    In close cooperation with Kashika Aggarwal, we developed a responsive platform that’s accessible from any device. The platform is a mediator between buyers and suppliers, enabling them to cut deals. Both buyers and suppliers can use the platform to fill out and post detailed requests for quotation specifying their requirements. Posted requests are then shared with traders who can send proposals, make counteroffers, and work out the nuances of deals. When both parties have agreed to the terms of a trade, they enter into a contract. After deals are concluded, suppliers and buyers can rate each other based on their experiences.

User roles

icon
Platform administrator

The platform administrator activates user accounts, verifies company details, checks all proposals, and sends the exact requirements of buyers and suppliers to match them with traders. The administrator manages all deals and resolves conflicts through the admin dashboard.

icon
Buyers

Buyers fill out and post their requests for quotation with exact requirements in order to find suppliers. Buyers then receive proposals from suppliers, review terms, and chat with suppliers online if both parties need to work out details. After contracts are fulfilled, buyers rate suppliers based on their experiences.

icon
Suppliers

Suppliers can see the details of buyers’ requests, offer terms and prices, answer relevant questions, and submit offers. Suppliers can also use online chats to make counteroffers. When a deal is concluded, a supplier can rate a buyer based on the results of the trading partnership.

Results

Duration:
Duration: May 2019 – September 2019
Team:
PM - 1 Frontend - 1 Backend - 1 DevOps - 1
Developed the backend

We initially agreed that all analytical data would be entered manually on the client’s side. This was why developing a highly customizable admin panel was our priority.

For backend development, we used Python and Django. Using Python and its open-source web framework allowed us to create an admin panel where administrators can easily add and manage all analytical data. To take care of the details of managing database tables (and assuming that during the MVP phase a lot of data entry and data management work was to be done manually), we introduced Django MPTT — a module that includes a tree data structure and many methods of querying and modifying tree data in the Django admin panel. 

We worked with the Django REST Framework to build a secure, encrypted, and expandable API for communicating with the frontend web application. 

We also implemented the open-source Docker into the process, as we wanted to automate the deployment of software in lightweight containers so it could work efficiently in different environments.

Developed the frontend

To develop the client side of the platform, we used React. During development, we had to optimize website speed and performance as well as SEO promotion, which is why we had to implement server-side rendering (SSR) practices. For this purpose, we used Next.js.

As the platform had to feature a vast quantity of graphical reports with different data, we brought Chart.js into our technology stack.

We also integrated Google Maps to show the company’s location.

Implemented features

After clicking the Join button, a user can create an account. To register, a user needs to provide personal details like their name, email address, contact number, and company name. After the user registers, this information is verified by the admin, and only after it’s approved is the account active and ready for use.

After clicking the Products button, a user sees a dropdown menu and can choose an item from the list. The platform supports products of different types and is ready to pivot in any direction or adapt to any market.

Traders can look through lists of new, saved, working, invited, and draft leads as well as customize these lists based on time, quality, and value.

Platform users can scroll through a list of recent trades, sort companies by time, quality, and value, and read important notes about traders.

Both buyers and suppliers can fill out requests for quotation and provide detailed requirements. Posted requests are listed in the market to find matching traders.

Buyers and suppliers can enter into contracts and upload contract documents onto the Factrade platform. Accountability and transparency are then ensured on the platform’s side.

Users can rate each other based on their experiences (payments, responses, commitments, service, quality) to build track records and increase credibility on the market.

To learn more about commodity market development, users can read trending news. In order to find specific information, traders are encouraged to use search filters.

Users can look through lists of trending events (past and upcoming) and subscribe to receive notifications about them.

Buyers and sellers can search for companies by product, country, value, supply chain, and rating. A company’s profile includes the company’s name and a short description of what the company does, contact details including a phone number and email, categories of products the company offers, insights on the company’s recent trades, and reviews and ratings.

Users can communicate through the platform to clarify the details of deals and make agreements. 

Technology stack

Python icon
Python
React icon
React
Docker icon
Docker
Django icon
Django
REST Framework icon
REST Framework
Google Maps icon
Google Maps
Next.js icon
Next.js