Logistics & export · Operations ERP
MTF Group — Export and customs operations ERP for a freight broker
A season of exports, one consignment at a time
MTF Group is a Baku customs broker and exporter that moved Azerbaijani fruit and vegetables to the Russian market. We built the system it ran on: every consignment carries its own documents, its own landed cost and its own margin from the grower’s yard to the closing invoice, every warehouse move is scanned, and no money leaves without an approval behind it.
Landed cost
- Purchase 18 240 ₼
- Transport 4 900 ₼
- Customs & fees 1 260 ₼
- Cold chain 820 ₼
Project facts
- Project type
- Client project
- Industry
- Logistics and transport
- Platforms
- Web system · Warehouse scanner · Excel reports
- Languages
- Azerbaijani · Russian
Before The challenge
The season ran on folders. The numbers arrived after it ended.
An export season is a few intense months in which hundreds of consignments leave the country, each with its own purchase price, its own truck, its own customs file and its own buyer. At MTF Group all of that lived in places that could not be added up: a chat thread, a broker’s folder, a warehouse notebook and a spreadsheet that was always a week behind.
- Chat thread Loading photos, plate numbers, prices agreed by voice
- Broker’s folder Declarations, certificates, invoices on paper
- Warehouse notebook What went in, what went out, written by hand
- Spreadsheet Retyped in the evening, from memory
- Accountant’s book Payments, closed weeks later
What it cost
-
Margin was a guess until the end
Purchase, transport, customs and cold chain were paid from different pockets at different times, so nobody could say what a single consignment had actually earned while it was still possible to act on it.
-
Documents were found, not kept
A missing certificate surfaced at the border, not in the office, and a truck standing at a checkpoint costs money by the hour.
-
Spending had no gate
Advances to growers, fuel, repairs and fees were agreed verbally and reconstructed afterwards from receipts, when the money was already gone.
-
Everyone saw everything, or nothing
There was no middle ground between handing over the whole spreadsheet and keeping people in the dark, so purchase prices travelled further than they should have.
Step 01 The consignment file
One consignment, one file, from the yard to the invoice
Everything the system does hangs off one object: the consignment. It is opened when produce is bought, it collects its truck, its documents, its costs and its buyer as it travels, and it closes when the last payment lands. Nothing about a shipment lives outside its file.
- CNS-1184 Baku → Astrakhan Cleared
- CNS-1185 Ganja → Astrakhan At the border
- CNS-1186 Baku → Astrakhan Declaration filed
- CNS-1187 Shaki → Astrakhan Document missing
- CNS-1188 Baku → Astrakhan Loading
-
It starts at the purchase
A consignment is opened with the grower, the crop, the weight and the agreed price, so the first number in the file is the one everything else is measured against.
-
The truck joins the file
Plate, driver and the transport rate attach to the consignment, and the freight cost stops being a separate invoice nobody can allocate.
-
The buyer is part of it
The receiving market, the buyer and the sale terms sit in the same record, so a shipment can be read forwards and backwards in one place.
-
Short shipments are recorded, not argued
Pallets that arrive damaged or short are written against the consignment when they are found, with a reason, and they land in the margin instead of in a conversation.
Step 02 Customs
The customs file is a checklist, not somebody’s memory
A broker lives and dies by documents. The system turns a consignment’s paperwork into a list of required items with a state each, so a gap is visible in the office on the day it appears — not at a checkpoint three days later.
What the checklist knows
- Which documents this shipment needs
- The required set follows the crop, the route and the buyer, so a shipment of tomatoes to one market does not carry the checklist of another.
- Who is responsible for each one
- Every item has an owner and a deadline, and an item without an owner is treated as missing rather than as somebody else’s problem.
- What state it is in
- Requested, received, filed, accepted. A document that exists as a photograph in a chat is not filed, and the file says so.
- What it costs to be late
- Border waiting is recorded against the consignment like any other cost, so the price of a missing certificate shows up in the margin instead of disappearing into the season.
Step 03 Warehouse
Scanned in, scanned out, counted at any hour
Produce is bought by the pallet and it moves fast. Every pallet, crate and reusable box carries a QR code, and every move — in, out, transferred, written off — is a scan on a phone rather than a line written in a notebook at the end of the day.
- 1 Accepted
- 2 QR label printed
- 3 Put away
- 4 Picked
- 5 Loaded
- 6 Left the country
-
The scan is the record
A move exists when it is scanned. There is no evening data-entry session in which yesterday is reconstructed from memory.
-
Stock is a number, not an opinion
What is in the cold store right now, which consignment it belongs to and how long it has been there are the same question with one answer.
-
Write-offs need a reason
Spoilage and damage are booked against the consignment with a reason and a person, which is what makes the loss visible in the margin instead of in the difference at the end.
-
Reusable packaging comes back
Crates and pallets are tracked like stock, so what left with a truck and what returned from it is a report rather than an argument.
Step 04 Landed cost
Every cost lands on a consignment the day it is paid
The purchase price is the smallest part of what a consignment costs. Transport, customs, fees, cold chain, commission and losses all attach to the file as they happen, so margin is a number that exists during the season instead of a discovery after it.
- Purchase Price agreed with the grower, per kilogram, against the weight accepted at the yard.
- Transport The freight rate of the truck carrying this consignment, not an invoice split across the week.
- Customs & fees Declaration, certificates, brokerage and border charges, each booked to the shipment that caused them.
- Cold chain Cold store time and any re-icing on the way, charged by the day the pallets occupied.
- Losses Short shipments, spoilage and rejected crates, taken off the quantity that can be sold.
- Margin What the sale left after all of the above — visible while the next consignment is still being bought.
A closed consignment, as the system shows it
-
19.8 t
accepted at the yard, of which 19.1 t were sold.
CNS-1184 · sample data
-
25 220 ₼
landed cost: purchase, transport, customs, cold chain and losses.
CNS-1184 · sample data
-
+ 4 180 ₼
margin, attached to the file the day the last payment cleared.
CNS-1184 · sample data
Step 05 Control
Every spend has an owner, an approver and a limit
In a business that pays cash advances in the field, control is not a report you read afterwards — it is a gate money passes through. Requests are raised where the spending happens, approved by the person whose budget it is, and everything anyone can see is decided by their role.
How a spend request travels
-
Raised
A buyer in the field raises a request against a consignment: what it is for, how much, and the grower or supplier behind it.
-
Checked against the budget
The system shows what the consignment has already absorbed and what the request would do to its margin.
-
Approved or returned
The approver is the person who owns that budget line, and a returned request carries the reason back with it.
-
Paid and attached
The payment is booked to the consignment with its document, so the cost and its proof never travel separately.
What roles change
- A buyer sees purchases
- Their own consignments, their own advances and the stock they accepted — not the margin of the shipment or what the buyer in the next district pays.
- The warehouse sees movement
- What arrived, what is in the store and what leaves today, without the prices attached to any of it.
- Finance sees money
- Payments, advances and balances across every consignment, with the documents behind each one.
- Leadership sees the season
- The whole picture, and an audit trail of who approved what, when, and against which budget.
15 sections
-
- Purchases
- Acceptance
- Scanning
- Write-offs
- Spend requests
-
- Consignments
- Documents
- Declarations
- Transport
- Buyers
-
- Payments
- Advances
- Approvals
- Landed cost
- Reports
Step 06 Analytics
What the season actually earned, week by week
With every cost sitting on the consignment that caused it, the reports stop being an assembly job. The season can be read by week, by crop, by grower, by buyer and by route — and the loss-making weeks are visible while there is still a season left to fix.
Margin by week
The two negative weeks are the ones the old spreadsheet only revealed in the autumn.
- Purchase 18 240 ₼
- Transport 4 900 ₼
- Customs & fees 1 260 ₼
- Cold chain 820 ₼
- By crop and by grower
- Which crops carried the season and which growers consistently delivered the weight and quality that was agreed.
- By route and by border
- What each corridor costs once waiting time and fees are counted, not only the freight rate that was quoted.
- By buyer
- Who pays on time, who returns pallets, and what the true margin on a buyer is after deductions and losses.
- Against last season
- The same week of the previous season next to this one, because in export the comparison that matters is seasonal, not monthly.
Our role
What Atlas BIP did
-
Mapped the season before writing a line of code
We followed a consignment from the grower’s yard to the closing payment — who touches it, which document appears where, and at which moment money leaves — and designed the system around that sequence rather than around a module list.
-
Built the ERP from scratch
Purchases, consignments, documents, transport, warehouse, payments and approvals as one system with one data model, instead of a set of tools that would need reconciling later.
-
Put a scanner in the warehouse
QR labels for pallets, crates and reusable packaging, and a phone-based scanning flow fast enough that a loading crew uses it while loading rather than afterwards.
-
Made cost land where it belongs
A costing model that attaches transport, customs, cold chain, fees and losses to individual consignments, which is what turns margin into a live number.
-
Built the reporting layer on top
Season, crop, grower, buyer and route reporting drawn from the operational records themselves, so the numbers leadership reads and the numbers the warehouse types are the same numbers.
Engineering
How it was built
- System
-
- Web application
- Relational database
- Role-based access control
- Audit trail
- Warehouse
-
- QR labelling
- Phone scanning
- Offline-tolerant entry
- Documents
-
- Document checklists
- File storage
- Printable forms
- Reporting
-
- Operational reports
- Excel export
- Power BI dashboards
Questions and answers
Questions we are asked about this project
Can a system like this work for a different export market?
Yes. The parts that change between markets are the document checklist, the cost lines and the buyer terms, and all three are configuration rather than code. The consignment file, the scanning and the approval flow stay the same.
Does the warehouse really need QR codes?
For produce that moves by the pallet and spoils, yes. Scanning is what makes stock a number instead of an estimate, and it is also what makes losses visible early enough to act on. For slower stock a simpler flow can be enough, and we say so.
How is margin calculated while a consignment is still moving?
Every cost is booked to the consignment when it is paid, and the expected sale value is on the file from the start. The margin shown mid-journey is therefore a running number that tightens as costs land, not a forecast.
Can we start with one part instead of the whole system?
Usually yes, and often the right order is the warehouse or the consignment file first, because they create the records everything else needs. We would rather deliver one part that people use than five that nobody trusts.
Your project
Your system is next
Tell us how orders, money and documents move through your company today. We reply within 24 hours with questions and a concrete plan.
Consignment codes, routes, weights and figures on this page are sample data used to show the interface. They are not a client’s commercial information.
Back to the start