Scroll to learn more arrow

Case Study

Multi-Vendor Integration App for A2B Direct

A2B Direct is a logistic B2B marketplace that connects cargo owners (customers) and freight forwarders (carriers). It’s often labeled as “Uber” for cargo transportations on the web.

LogisticsManaged Delivery
Case image

01

Project overview

Project Duration:
August 2019 - Ongoing
Developers
13
Technology Stack
React, .NET

Initially, A2B Direct had a basic functionality that included only a possibility to book forwarders and give them ratings. However, after some testing, it appears that more sophisticated features are required for the platform to work effectively. Limestone Digital was responsible for delivering some parts of the extensive functionality of this platform.

02

Challenge

A challenge here was to create a system that would be able to communicate effectively with multiple third-party service providers. Considering the amount of data needed to be processed, it was particularly important to create a system that would be extremely resilient.

03

Solution

To tackle the challenges, the decision was made to focus on three main areas. First of all, the system needed a great variety of algorithms on the backend to create different scenarios and features. Secondly, it’s needed to create different user roles (customer, carrier, and admin) so that different users can have access to different platform features. And finally, for those features to function, the system needed a durable architecture.

image

SYSTEM ARCHITECTURE

Microservice system for greater stability

The frontend communicates with the API gateway. Which redirects requests to the necessary services. Each service that requires persistent storage has a separate database. Services communicate with each other using a message bus. Inside the system, detailed logging and query tracing is implemented. This data is analyzed for anomalies which allows responding to malfunctions in a timely manner.

GRANULAR ROLE PERMISSION
A2B Direct users can log in to the system as a client, carrier, and admin. Each of those roles has unique abilities to make buyer-seller interaction work effectively.
image
Customer
On A2B Direct, customers can make transportation orders, participate in tenders, and track their deliveries. The system will try to get the best offer from carriers, close on the intended price.
Post orders
A customer provides shipment details and the desired price for delivery.
Tenders
Once approved, orders will appear in the tender tab to be pursued in an English auction by carriers.
image
Carriers
Carriers can make bids in the auction and once a certain tender has been won, they can assign a certain transport to fulfill the delivery.
image
English auction
Carriers compete in an English auction (ascending dynamic auction) to provide the lowest price possible. A winning bid is highlighted in green.
Transports
Forwarders can assign drivers and transport units to particular orders and check locations of those trucks that are currently busy with order fulfillment.
image
INDICATIVE PRICE FORMATION
On the backend, the system has sophisticated algorithms for price formation, that takes into account tariffs, auction bids, and many other factors.
1C API
Since price formation is extremely dynamic, it was important that the system has access to up-to-date data. So every time the management makes certain changes in 1C, those changes will be automatically reflected in the system.
Tarif calculation
The calculation of transport tariffs is based on over 200 various factors, including seasonality, distance, type of cargo and the amount forwarders bid on a reverse auction.
TRANPORTATION
The transportation module needs to provide precise geodata for both carriers and customers. So the system receives data from tachographs and accurately establishes them on Google Maps which is very important for the many platforms features to work effectively.
Full track loading (FTL)
FTL determines the order in which cargo items are loaded into a track so that they can be later unloaded in the same sequence as the destination points appear.
Transshipment points
For more efficient delivery, the system creates transshipment points where vehicles can exchange cargos with each other.
Routing module
If a new delivery request appears while a track is on the go, the system will shift a route so that a new order can be picked up in case a pickup point is within proximity.
Contact Us
Feel like discussing?
Book a 30-minute call!

Name(Required)
This field is for validation purposes and should be left unchanged.