Instead of CargoWise
Stop renting CargoWise. Own your forwarding system.
We build your version around how your operators run a job, bring your CargoWise shipments across and run it for you. Moving more boxes stops costing more in software.
CargoWise now charges per shipment: its published list price is USD 19.95 for every full container import and USD 12.75 for every full container export, before read-only cloud access at USD 2,500 a month.
- check_circleYour data in a database you own
- check_circleOpen source, no lock-in
- check_circleBuilt and run by Enterprise DNA
What the subscription covers
You pay for every box that moves
A forwarding system holds jobs, the containers and milestones on each, and the costs and revenue on each. Since December 2025 CargoWise bills most of that per shipment. Look at which part of the invoice is the record and which part is the toll.
A fee on every import
USD 19.95 for each full container import shipment and USD 13.30 for each less than container load or air import, on the published list.
A fee on every export
USD 12.75 for each full container export and USD 8.35 for each less than container load or air export. Cross trade and co-load jobs carry their own fee.
Paying to look
Read-only cloud access is listed at USD 2,500 a month, which is USD 30,000 a year to let people see records you already own.
A line on your customer's invoice
CargoWise says the automation fee can be passed on as a disbursement. Many forwarders are not keen to explain a software charge to a shipper who can shop around.
A bill that moves with volume
A busy month costs more in software as well as in people. Industry reporting has forwarders expecting their CargoWise costs to rise sharply under the new model.
The jobs themselves
House bills, containers, ETAs, milestones and charges. This is plain data, and it is the part of the business you most need to own.
The system you own
Run the forwarding desk from one place
Border clocks
Know what is due before the vessel
Every import carries the clocks the border agencies set, counted from the ETA you record.
- check House cargo report into Australia, due 48 hours before arrival by sea and 2 hours by air
- check Import declarations over the AUD 1,000 and NZD 1,000 thresholds, before arrival or within 20 days in New Zealand
- check BMSB season treatment for target goods from target risk countries
- check Each one flagged until a person records that it was lodged
Cutoffs and free time
Stop paying for the late ones
Exports are checked against their cutoffs and imports against their free time, so the expensive misses show up while there is still time.
- check Export containers with no verified gross mass three days before the cargo cutoff
- check Dangerous goods with no declaration before the document cutoff
- check Import containers by days of free time left, and the day detention starts
- check Container numbers checked against their check digit when they are entered
Job profit
See what each job made
Costs and revenue sit on the job in any currency, converted at your rate, so profit is never a month-end surprise.
- check Delivered jobs not invoiced, oldest first, with the amount sitting there
- check Costs paid with no matching charge to the customer, such as detention or cartage
- check Profit and margin by job and by customer, against your margin floor
- check A job will not close while revenue is unbilled or a container is still out
Customers and carriers
Answer the questions the screens never did
The first ETA a carrier gives is kept, and every job keeps its history, so the patterns are there to ask about.
- check How far each carrier's arrivals slip from the first ETA
- check Late milestones by operator
- check Status updates and arrival notices drafted for each customer, never sent without a person
- check Arrival notices, job sheets and customer statements in your own brand
Make it yours
Design your own CargoWise replacement
Everything starts from the open-source base. Then it gets your name, the parts you run, your rules and your data from CargoWise. Try it here, and we build the real one.
2. What it runs
3. Make it fit
4. Your colour
Answered from your own database
Good morning. Here is what needs you today.
We build it from the open-source base, bring your CargoWise data across and run it for you.
What it looks like
Ask it like you would ask a colleague
Real answers from the demo data that ships with Freight Forwarding for Claude Code. It runs in Claude Code inside the Claude app, so it feels like any chat you already use.
Freight Forwarding for Claude Code
Connected to your own database
What is breached or due on our jobs right now, and under which rule?
1
- Kind
- shipment
- Reference
- S1001
- Rule
- AU-ICS-64AB
- Finding
- Breached: house cargo report was due 2026-10-09 00:00 UTC
1
- Kind
- shipment
- Reference
- S1001
- Rule
- BMSB-SEASON
- Finding
- Shipped 2026-09-19 from DE in the BMSB season with no treatment certi...
1
- Kind
- shipment
- Reference
- S1006
- Rule
- DG-DECLARATION
- Finding
- Breached: document cutoff passed with no dangerous goods declaration
1
- Kind
- shipment
- Reference
- S1007
- Rule
- NZ-DECL-20
- Finding
- Breached: import declaration was due 2026-10-07
1
- Kind
- container
- Reference
- S1002/MSKU7654333
- Rule
- POLICY-FREE-TIME
- Finding
- Free time ended 2026-10-08, container still out 1 day
1
- Kind
- shipment
- Reference
- S1003
- Rule
- POLICY-UNBILLED
- Finding
- Delivered 2026-09-30, 1935.00 not invoiced
2
- Kind
- shipment
- Reference
- S1001
- Rule
- AU-DECL-68
- Finding
- Lodge the import declaration before 2026-10-11 (customs value 48500.0...
2
- Kind
- shipment
- Reference
- S1004
- Rule
- AU-ICS-64AB
- Finding
- Lodge the house cargo report by 2026-10-10 22:00 UTC
2
- Kind
- shipment
- Reference
- S1009
- Rule
- POLICY-ETA
- Finding
- ETA 2026-10-08 passed with no arrival recorded
2
- Kind
- container
- Reference
- S1002/MSKU7654328
- Rule
- POLICY-FREE-TIME
- Finding
- Free time ends 2026-10-11: return the empty or warn the customer
2
- Kind
- shipment
- Reference
- S1003
- Rule
- POLICY-UNRECOVERED
- Finding
- DEL cost of 340.00 from Westgate Transport has no matching charge to ...
2
- Kind
- shipment
- Reference
- S1007
- Rule
- POLICY-UNRECOVERED
- Finding
- FUM cost of 520.80 from Hapag-Lloyd has no matching charge to the cus...
2
- Kind
- container
- Reference
- S1005/MSKU2210995
- Rule
- SOLAS-VGM
- Finding
- Send the VGM before the cargo cutoff 2026-10-11 11:59 UTC
3
- Kind
- shipment
- Reference
- S1008
- Rule
- POLICY-MARGIN
- Finding
- Margin 9.0% is under the floor of 15%
| Severity | Kind | Reference | Rule | Finding |
|---|---|---|---|---|
| 1 | shipment | S1001 | AU-ICS-64AB | Breached: house cargo report was due 2026-10-09 00:00 UTC |
| 1 | shipment | S1001 | BMSB-SEASON | Shipped 2026-09-19 from DE in the BMSB season with no treatment certi... |
| 1 | shipment | S1006 | DG-DECLARATION | Breached: document cutoff passed with no dangerous goods declaration |
| 1 | shipment | S1007 | NZ-DECL-20 | Breached: import declaration was due 2026-10-07 |
| 1 | container | S1002/MSKU7654333 | POLICY-FREE-TIME | Free time ended 2026-10-08, container still out 1 day |
| 1 | shipment | S1003 | POLICY-UNBILLED | Delivered 2026-09-30, 1935.00 not invoiced |
| 2 | shipment | S1001 | AU-DECL-68 | Lodge the import declaration before 2026-10-11 (customs value 48500.0... |
| 2 | shipment | S1004 | AU-ICS-64AB | Lodge the house cargo report by 2026-10-10 22:00 UTC |
| 2 | shipment | S1009 | POLICY-ETA | ETA 2026-10-08 passed with no arrival recorded |
| 2 | container | S1002/MSKU7654328 | POLICY-FREE-TIME | Free time ends 2026-10-11: return the empty or warn the customer |
| 2 | shipment | S1003 | POLICY-UNRECOVERED | DEL cost of 340.00 from Westgate Transport has no matching charge to ... |
| 2 | shipment | S1007 | POLICY-UNRECOVERED | FUM cost of 520.80 from Hapag-Lloyd has no matching charge to the cus... |
| 2 | container | S1005/MSKU2210995 | SOLAS-VGM | Send the VGM before the cargo cutoff 2026-10-11 11:59 UTC |
| 3 | shipment | S1008 | POLICY-MARGIN | Margin 9.0% is under the floor of 15% |
Ask it anything
Ten questions to ask your forwarding system
Each question runs against the fictional demonstration forwarder today. Your own jobs answer the same questions once they are brought across.
Switching
How to switch from CargoWise
The move is a staged process: export the records you need, check the import, run both systems side by side, then switch over.
- 1
Export your CargoWise records
Start with a CargoWise shipment list report and export it as a CSV. Containers, charges and milestones are in separate reports, so export those too if you want to bring them across. Check with CargoWise which reports and export options your account allows, and decide which records and history you need in the new system.
- 2
Run a test import
Load the shipment list using the import's test run first. In plain terms, this checks what the file would bring across without saving the jobs. If your report uses different column headings, map them to the fields in the new system. The import keeps the original row and brings jobs in as drafts for you to review.
- 3
Review the import findings
Check the test results before saving anything. Review rows the import flags, confirm that the mapped fields are right, and make sure jobs look as expected. The import leaves jobs as drafts for checking. If a row has changed since a previous import, the run stops, so investigate that difference before continuing.
- 4
Run both systems side by side
Once the imported records check out, use the new system alongside CargoWise for a short period. Keep CargoWise as your reference while you check that operators can find the jobs and that the records you need are present. Compare the work in both systems and resolve gaps before relying on the new one.
- 5
Switch off CargoWise
When you are satisfied with the records and the way your team works in the new system, make it the system you use for ongoing jobs. Keep any records you still need from CargoWise according to your own requirements. Then arrange to stop using CargoWise and its access with your provider.
Where the real effort goes
The real work is usually mapping your own report headings, fields and operating rules, then deciding how much history to bring across. The shipment list is one report, while containers, charges and milestones are in separate reports. If Enterprise DNA runs the installation, they map those records and reconcile the move with you.
Not ready for a call?
Get your CargoWise switch plan by email
We will send you the step-by-step plan for moving your business off CargoWise, what the move really involves, and how we would do it for you.
Sent. Check your inbox.
Your CargoWise switch plan is on its way.
Rather talk it through? Book a call arrow_forwardThree ways to own it
Start with the free version or have yours built
Open source
Do it yourself
Free, open source
- 1 Clone the repo and run npm install
- 2 Run npm run demo to try the fictional Melbourne forwarder
- 3 Open it with Claude Code, Codex, OpenCode or Cursor
- 4 Export a CargoWise shipment list to CSV and dry-run the import
Built around your business
We customise it
A setup fee, then a retainer for ongoing work
- check Your charge codes, free time, margin floor and job stages
- check Your CargoWise shipments, containers and charges brought across
- check Carrier tracking feeds, a customer portal or a web front end if you want them
- check The rules for the countries you clear into, written down with their sources
Omni by Enterprise DNA
We run it for you
One setup fee, then a retainer
- check Installed and operated through Omni by Enterprise DNA
- check Connected to your accounts system and your lodgement service
- check The morning list, the weekly review and customer status updates drafted on time
- check A person to call when a border rule or a BMSB season changes
Questions
Instead of CargoWise, answered
Does it lodge cargo reports and import declarations? expand_more
No. Lodgement stays with your customs broker or lodgement service. This system holds the clocks: it shows when each report and declaration is due, and flags it until a person records that it was lodged and its number.
Will our CargoWise jobs come across? expand_more
The free version imports a CargoWise shipment list report saved as CSV. It reads the usual headings, lets you map your own, keeps every original field and brings each job in as a draft for checking. Containers, charges and milestones sit in other reports. Enterprise DNA maps those and reconciles the move with you.
We clear into New Zealand, not Australia. Does it still work? expand_more
Yes. The rules follow the country of the destination port, so a job into Auckland is checked against the New Zealand declaration rules and a job into Melbourne against the Australian ones. Set your home country and currency once.
What about carrier tracking, EDI and a customer portal? expand_more
The free version records what your operators enter. Enterprise DNA connects carrier tracking feeds, builds a portal where customers see their own shipments, and adds a web front end for the people who want screens, all on the same database.
How does the cost compare with CargoWise? expand_more
CargoWise publishes a fee per shipment, so bring your last invoice and your shipment count. Our installed version has one setup fee, then a retainer for the work we agree, and no fee per shipment. The free version costs only hosting and your agent if you run it yourself.
Make the next shipment cost you nothing extra in software
Book 30 minutes with Sam. Bring your last CargoWise invoice, one shipment list export and the countries you clear into. We will map the jobs, the clocks and the reports your version needs.
Freight Forwarding for Claude Code is free and open source, published by Enterprise DNA.
Done paying for CargoWise?
Get your version built