Problems & solutions · Supply Chain

Air Cargo Software Problems: The 5 That Cost Real Money, and How to Avoid Them

AIR Cargo Software workflow illustration showing common problems and fixes.
The short answer

The most expensive failure in freight forwarding software is a shipment model built as a parent record with child records hanging off it. A forwarder does not sell shipments, it sells consolidation, and the moment you co-load with a partner, split at the hub and settle profit share on the buy rate, a parent and child table cannot express what happened. So the consol economics go back into a spreadsheet, the settlement goes back into a journal entry, and the thing your customers actually pay you for stays invisible to the system you just paid to build. You will rebuild the core inside two years, and until you do, nobody can tell you the true margin on any lane.

Why does the consol data model get scoped as a parent shipment record?

Show a competent developer a house air waybill and a master air waybill and they will draw the obvious thing: a shipments table with a parent identifier. It is a reasonable first instinct and it is the single biggest scope failure in this category, because it describes documents rather than the business.

Run the scenario that breaks it. Your house bills plus three you took from a partner forwarder ride on one master you bought from an airline. Two of those houses are dangerous goods, one is temperature controlled pharma. At the hub the consol splits: part goes on by road under a road consignment note, part flies onward on a different master. Now ask the system what the margin was and who owes whom. A parent identifier cannot answer, because pieces of the load moved between parents, the buy rate was allocated across parties, and one leg is not an air waybill at all.

The model that works treats the shipment as a graph rather than a hierarchy. House bills, masters, co-load allocations, splits, re-consolidations and onward legs are relationships, each carrying its own weight, dimensions, dangerous goods classification and commercial terms. Margin then recomputes at every level: per house, per consol, per lane, per partner, per month. When an operator moves a house off tonight's master, both consols reprice in the same transaction rather than in an evening spreadsheet. Ask any prospective developer to draw this on a whiteboard before you sign, because everything else is a view onto it and it is expensive to change later.

What goes wrong when you migrate out of CargoWise or Magaya?

Forwarders lose freight during migrations, and they lose it for a predictable reason: somebody planned a cutover weekend. There is no weekend in which a forwarder is not moving cargo, and open shipments do not respect your project plan. A house bill booked in the old system, flown under a master created in the old system and cleared through an entry filed from it, will still be arriving, being invoiced and being queried weeks after go live.

Plan for a parallel run instead. New bookings go into the new system from a chosen date, open shipments finish in the old one, and both stay live until the last open file closes. Typically that is four to eight weeks of two systems, which is inconvenient and far cheaper than dropping a consignment. Give your operations team an unambiguous rule for which system a given file lives in, because ambiguity is what produces a shipment recorded in neither.

The data has three layers of difficulty. Customer, partner and address records migrate cleanly. Rate tables migrate badly, because half your buy rates never lived in the system properly: they are spot rates agreed on the phone, a soft block bought for a quarter, and a partner tariff that arrives as a PDF. Treat rates as a fresh capture exercise using the new system's ingestion path from day one. The accounting linkage is the third layer and the one that bites, because job costing carries accruals against estimated buy rates that will not settle until the airline invoices weeks later. Those open accruals have to move with their jobs or your first month end will not reconcile, and nobody will trust the numbers afterwards.

Why do carrier and customs integrations break after launch?

Carrier integrations break because every airline is different and none is stable. Some expose a usable interface, some send Cargo-XML or Cargo-IMP over a legacy channel, and some offer a portal and nothing else. The failure after launch is rarely a hard outage. It is a message format that changed slightly, a status code arriving with a new value, or a test environment that never matched production, so a feed that validated during the build silently stops writing events to your timeline. Treat every inbound message as untrusted, quarantine anything that fails validation into a visible queue rather than discarding it, and alert on the absence of expected traffic. A carrier that has sent nothing for six hours is a bigger signal than one sending malformed messages.

Customs filing breaks on the calendar rather than on the code. Building to a customs authority's interface involves a certification process and a test cycle whose schedule you do not control, and each jurisdiction is its own effort. The classic project failure is scoping certification as a task at the end, which means the whole build waits on someone else's queue. Start it in parallel on day one. After launch, the recurring problem is regulatory change: filing requirements are updated, and a system that hardcoded field rules needs a release for something that should be a configuration change. Keep the filing rules as data with an effective date, exactly as you would keep a tariff.

What happens when dangerous goods and denied party screening are not covered?

Dangerous goods handled as a checkbox means the classification lives in an operator's head and on the shipper's declaration. When a house bill moves between consols, its dangerous goods status has to move with it and be checked against what else is on the master, because segregation and acceptance rules apply to the load rather than to the piece. A system that records the classification but does not enforce it at consolidation will let an operator build a master the airline rejects at acceptance, and you find out at the warehouse with the truck waiting. The same applies to temperature controlled pharma: a lane commitment that is not modelled is a commitment that gets broken during a reroute, at which point the excursion is your problem.

Denied party screening scoped as a report is the other one. A nightly batch that flags a match after the fact tells you about a shipment that is already airborne. Screening has to run at booking, on every new shipper and consignee, and it has to block rather than flag. The difference between a control and a report is whether it can stop the transaction, and that distinction is what your compliance officer will be asked about. Both also feed the same underlying need, which is an audit trail of who classified what, on what evidence, and when. That record is what saves half a day nine months later when an authority asks about a specific entry.

Should you build custom or configure what you already own?

If you are under roughly 400 shipments a month on one or two trade lanes with customs going through an outside broker, stay where you are. CargoWise at that size is a reasonable deal, Magaya is the sensible choice for a smaller forwarder who wants something usable this quarter, and your constraint is sales rather than software. Building against a business that small means spending six figures automating a process you have not stabilised.

Build when the thing your customers pay you for cannot be expressed in the system. A co-load model with unusual economics, a vertical service such as pharma lane control or aircraft on ground parts, a partner network with settlement rules the software does not understand. If that lives in a spreadsheet beside your forwarding system, you have your answer. The other honest signals are three or more people whose job is retyping between systems, and being told that is not how the system works three separate times about the same workflow. The vendor is not wrong. Their product serves the median forwarder and you are not it.

How do hidden costs get into an air cargo software quote?

Carrier count is the classic one. A quote says carrier integration, singular in effort and plural in expectation. Each airline is one to three weeks depending on what it exposes, and ten carriers is a quarter of a typical budget. Get the list named in the scope with the message standard beside each one, and expect the airline that only has a portal to cost the most despite looking the simplest.

Accounting integration is the third and it is where projects quietly overrun. Freight accounting has its own gravity: job costing, accruals against estimated buy rates, and the reconciliation when the airline's invoice arrives at a different number than you accrued. Connecting that properly to your finance system is real weeks, and a line item saying accounting integration usually means the file export rather than the reconciliation. Fourth, dangerous goods and pharma validation, which looks like nothing on a wireframe. Fifth, the parallel run, because two live systems means duplicated data entry and support for a month or two, and that operational cost belongs in your business case even though it never appears in a developer's quote.

What separates a build that works from one that fails here?

The successful projects pick one bleeding wound for release one and finish it. Usually that is the shipment and consol model plus document extraction with a review queue, plus either the rate engine or the customs path, never both. The failed ones try to replace the whole forwarding system in one go and spend a year building toward a launch date that keeps moving while the business runs on the old stack anyway.

Third, set the review threshold on document extraction deliberately and tune it against your own document mix. In our builds forwarders land at roughly 80 to 92 percent of fields auto accepted after a few weeks of tuning, and the rest go to a queue where an operator confirms a value against the highlighted region in the source with one keystroke. Set the threshold too high and your people stop trusting it. Set it too low and a wrong value reaches an entry.

Finally, get code ownership in writing before kickoff: the repository, the infrastructure accounts and the deployment pipeline. At Digital Heroes the client owns it from the first commit. This system will run your operation for a decade, and the ability to hand a different team the keys on any given Monday is the only real bargaining position you have after go live.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. 48% of private companies cite integration with legacy systems or technical debt as a top obstacle to realizing the full value of their digital and AI investments (behind data quality/availability at 72% and gaps in AI fluency or technology talent/leadership at 53%). Source: Deloitte (2026) →
  2. Digital Champions expect to achieve about 16% in cost savings and around 15% in revenue gains from digital operations over five years; the study surveyed 1,155 manufacturing executives across 26 countries. Source: PwC / Strategy& (2018) →
  3. Gallup reports global employee engagement fell to 20% in 2025 (its lowest since 2020, down from a 2022-2023 peak of 23%), and estimates low engagement costs the world economy an estimated $10 trillion in lost productivity, or 9% of global GDP. (Note: this figure appears in Gallup's evergreen State of the Global Workplace page, currently reflecting the 2026 edition reporting on 2025 data.). Source: Gallup (2025) →
  4. The EY survey of 508 payroll professionals at U.S. companies with 250-10,000 employees quantifies the direct and indirect cost of payroll inaccuracy, reinforcing the ROI case for payroll automation; the study is the original source of the frequently cited $291-per-error figure. Source: BusinessWire / EY (Ernst & Young) (2022) →
Zayn H. · Director of Strategy · UK · London

Zayn sets the direction of UK engagements before any code is written, working out which problems are worth solving first and what a sensible first release looks like. Readers get a view of how buying decisions are actually made, including the ones that get deferred.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How do we know if a developer can actually model our consols?
Give them the scenario on a whiteboard before you sign anything: your house bills plus a partner's on one master, dangerous goods in the mix, a split at the hub with one part continuing by road, and profit share on the buy rate. If they draw a shipments table with a parent identifier, they have not built this. The correct answer treats the shipment as a graph where allocations, splits and onward legs are relationships, so margin recomputes at every level when an operator moves a house bill.
Can we cut over to a new system over a weekend?
No, and any proposal that offers it has not run a forwarder's migration. Open shipments do not stop for your project plan, and a house bill booked, flown and cleared in the old system will still be invoiced and queried weeks after go live. Plan four to eight weeks of parallel running with new bookings going into the new system from a chosen date. Give operations an unambiguous rule about which system a file lives in, because ambiguity produces shipments recorded in neither.
Why should rate tables be recaptured rather than migrated?
Because most of your buy rates never lived cleanly in the old system. Spot rates agreed on the phone, a soft block bought for a quarter and a partner tariff arriving as a PDF are typically held in email and someone's memory, so migrating the table moves a stale subset and gives it new authority. Treat rates as a fresh capture exercise using the new system's ingestion path from day one, including a fast mobile form so a spot rate gets recorded while your ops manager is still on the call.
Why do carrier feeds stop working weeks after launch?
Rarely because of a hard outage. Usually a message format shifted slightly, a status code arrived with an unexpected value, or the test environment never matched production so a feed that validated during the build quietly stops writing events. Treat every inbound message as untrusted, quarantine failures into a visible queue instead of discarding them, and alert on the absence of expected traffic. A carrier that has sent nothing for six hours is a stronger signal than one sending malformed messages.
When should customs certification start?
On day one, in parallel with the rest of the build. Certification involves a test cycle with the authority whose schedule you do not control, so budget six to ten weeks of elapsed time per jurisdiction and treat any proposal that puts it in the final sprint as mispriced. After launch, keep the filing field rules as data with effective dates rather than in code, because requirements change and you do not want a software release for something that should be a configuration update.
Is denied party screening enough as a nightly report?
No. A batch that flags a match after the fact is telling you about freight that is already airborne. Screening has to run at booking, on every new shipper and consignee, and it has to block the booking rather than annotate it. The distinction between a control and a report is whether it can stop the transaction, and that is precisely the question your compliance officer will be asked. The same logic applies to dangerous goods checks at consolidation rather than after the master is built.
We are told our system cannot do something. Is that a reason to build?
Only if it is the third time you have heard it about the same workflow, and only if that workflow is what your customers pay you for. Before commissioning anything, have someone competent spend two weeks on the system you already own, because a meaningful share of reported limitations are unmaintained configuration: stale rate tables, workflow states set up at implementation and never revisited, and reports nobody knew how to build after a key person left. If that fixes it, you have saved a year.
Which cost is most often missing from an air cargo quote?
Accounting integration, because freight accounting has its own gravity. Job costing, accruals against estimated buy rates, and the reconciliation when the airline invoices at a different figure than you accrued are real development weeks, and a line item reading accounting integration usually covers the export rather than the reconciliation. The second most common gap is the operational cost of the parallel run, which means duplicated entry and support for a month or two and belongs in your business case even though no developer quotes it.
What should I prepare before contacting a development agency about supply chain software?
Bring a written list of your workflows from purchase order to delivery, the systems each step touches, and the 3 to 5 pain points costing you the most hours or errors. Export a sample of your real data, SKUs, orders, and locations, because data shape drives half the design decisions. You do not need a formal spec; Digital Heroes scopes most supply chain projects from a two-page problem description plus screen-share walkthroughs of the current process.
How many SaaS seats do we need before building custom becomes cheaper?
The crossover usually shows up between 20 and 50 seats on premium tiers. Salesforce Enterprise lists at $165 per user per month, so 40 users cost about $79,000 a year in subscriptions, which is real money against a custom system you would own outright. Run the comparison over three years: if subscription spend beats the build cost plus 15-20% annual maintenance, custom wins on price before you even count workflow fit.
What should I prepare before contacting a software development agency?
A one-page brief beats a 40-page requirements document: the business problem in plain words, who will use the system, the 5 to 10 workflows it must handle, the tools it must connect to, and your budget range and deadline driver. You do not need wireframes, a specification, or technical vocabulary; producing those is the agency's job during discovery. Stating a budget range up front is the single best move, because it gets you honest scoping instead of a quote engineered to win the meeting.
Will an app built for 10 users survive growing to 500?
Yes, if it is built on standard cloud infrastructure with a sound data model, because moving from 10 to 500 users is a hosting configuration change, not a rebuild. The scaling decisions that actually hurt are made early and invisibly: how the database is structured, how accounts and permissions are modeled, and whether background work is queued properly. Ask your agency how the system would handle ten times the load; the right answer is boring and specific, and a promise to cross that bridge later means you will pay for the bridge twice.
Can we migrate years of data out of our current system into new custom software?
Almost always yes, through CSV exports or the vendor's API, and migration should be scoped as its own workstream with field mapping, a dry run, and a planned cutover window rather than an afterthought. The real time sink is rarely moving the data; it is cleaning it, since years of duplicates, free-text fields, and inconsistent formats surface all at once. Pull a full export from your current vendor before committing to anything new, because some SaaS plans restrict exports on lower tiers.
How do I vet a software development agency before signing a contract?
Ask to speak with two past clients whose projects resemble yours in size and industry, and ask exactly who will write your code, since some agencies sell senior faces and deliver junior or subcontracted hands. Demand a written specification with acceptance criteria before any fixed price, and check that their portfolio links to products that are actually live. An instant quote given without questions about your workflows is the clearest warning sign there is.
How long does it take to build custom supply chain software?
Plan on 10 to 14 weeks for a first production release covering one or two core workflows, and 6 to 9 months for a full platform spanning procurement, inventory, and fulfillment. Digital Heroes ships most supply chain MVPs in about 12 weeks with a 4 to 6 person team. Integrations are the schedule risk: each ERP, EDI, or carrier connection typically adds 2 to 4 weeks of build and testing.
What does it cost to maintain custom supply chain software each year?
Budget 15 to 20 percent of the original build cost per year, so roughly $9,000 to $12,000 annually on a $60,000 system, covering hosting management, dependency updates, bug fixes, and small enhancements. Across its maintenance contracts, Digital Heroes sees supply chain systems need more upkeep than typical web apps because carrier APIs, EDI specs, and ERP versions keep changing underneath them. Hosting itself is usually minor, often $100 to $500 per month for a mid-size operation.
Who can build a custom supply chain software system?

Digital Heroes builds custom supply chain software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other supply chain software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?