Tuesday, 15 September 2026

Bulk Actions, now for everyone

Closing two hundred work orders used to mean two hundred page loads — or a note to your system administrator. The new Bulk Actions page hands that job to whoever already has the rights to do it one at a time, and shows you every result as it lands.

What changed

The old Bulk Actions page lived under Admin > SysAdmin Pages and was exactly that - SysAdmin only. If you needed forty work orders closed at month-end, you raised it with someone who had the keys, and they ran it on your behalf.

That page has been retired. In its place is a page anyone can open, which decides what you may do by asking the same questions TrakIT asks when you close a single work order from its own screen: do you have the permission for this action, and can you see this record at all? Nothing new was unlocked. What changed is that you no longer need a middleman to use rights you already had.

The second change is how a run feels. The old page did the whole list in one round trip and showed you a block of text when it finished — no progress, no way to intervene. The new page processes one record at a time and writes each result to the screen the moment it completes, so you can watch it work and stop it if something looks wrong.

Where to find it

Two menu entries, both opening the same page on the tab you'd expect:

Operations › Bulk Operations › Bulk Actions — opens on Work Orders, alongside Bulk Create and Bulk Update.

Finance › Bulk Actions — opens on Finance Jobs, just under Accounts.


You can switch tabs once you're there, so it doesn't matter much which door you came through. If you only have rights on one side, you'll only ever see that one tab.



1) Paste your IDs
Work order IDs or job IDs, separated by whatever your source gave you - commas, semicolons, tabs, spaces, or one per line. A column straight out of Excel works as-is.

The count under the box updates as you type. Duplicates are collapsed, the order you typed is kept, and anything that isn't a number is called out and skipped rather than silently swallowed.

2) Pick the action
Actions you don't have permission for still appear in the list, marked (not permitted) and greyed out, with the reason shown underneath. You can see what the page offers even where you can't use it — which tells you what to ask for, instead of leaving you guessing why a menu is short.

3) Give a reason
A reason of at least three characters is required, and it is recorded against every single record the run touches. Cancelling a work order also asks for a Cancellation Reason from your standard reason list; Finance actions ask which Company you're acting for, limited to the companies you have access to.

4) Confirm, then watch
Start asks you to confirm, spelling out the action, the number of records and any option that widens what the run will push through. Then results begin appearing, one row per record, top to bottom.

A sample result for closing work orders is shown below:


What you can do

The same operations that exist on the work order and finance job screens are applied down a list. Each one enforces its own permission, exactly as it does when you run it singly.

Reserved for SysAdmins

Three things stay behind the administrator line, because each one pushes past a check the rest of TrakIT relies on:

Delete — the only action here that cannot be undone by running something else.

Bypass Custom Validations — skips the workflow validations your business has configured.

Force Close (Finance) — closes a job without the unapproved-invoice and unvalidated-bill checks.

For everyone else, these simply aren't on the page. Where an option is visible but unavailable, the page says why rather than leaving a dead control.


Only your records

Pasting an ID does not grant you anything. Every record in the list is checked against your own access before it is touched, using the same rules as the rest of TrakIT:

  • Work orders are matched against the workflows assigned to you, plus any work order filter on your account and any custom SQL filter your company has set.
  • Finance jobs are matched the same way the finance job screen matches them before it will open one.
  • Companies in the Finance tab are limited to the offices you're linked to, plus your own.

An ID you have no access to comes back as Failed — Work Order not found or no permission — and the run carries on to the next one. So a list that mixes your records with a colleague's does the part that's yours and reports the rest, rather than failing wholesale.


Reading the results

Each row carries the ID as a link you can open in a new tab, the job number and container so you can recognise the record without clicking, the outcome, and the status the record ended up in.

A Success row means the action went through. A Failed row carries the reason next to it in the words TrakIT would have used on the record's own screen — WO is already closed, Cannot close job with unapproved invoices, Items not committed. Failures are information, not errors: a list assembled from a report will often contain records someone else already dealt with, and those rows tell you so.

Above the rows, five counters: Total, Done, Success, Failed and Elapsed. Success turns green and Failed turns red only once they're above zero, so a clean run reads as clean at a glance. Elapsed ticks in tenths of a second and stops the moment the run does.

When it's over, Copy Results puts the whole log on your clipboard, tab-separated — paste it straight into Excel.


Stopping a run

Stop halts the run after the record currently in flight. Anything still on the list is never attempted, and the final line tells you how many were left untouched.

Stop is not undo. Records already processed have already been changed and stay that way — there's no rollback. If you stop a run at 40 of 200, those 40 are done. Re-open or re-run as needed, but treat what's finished as finished.

This is also why the page works through the list one at a time rather than firing everything at once: a run you can see is a run you can stop before it gets where you didn't want it to go.


Limits and guard rails

4,999 records per run, and 99 for Reset, which is considerably heavier than the rest.

Every record is re-checked on its own. Status rules still apply — a work order that's already closed reports that instead of being closed twice, and a job that isn't approved yet can't be closed.

Everything is logged. One audit entry records the run — who, which action, and the full list of IDs — and each record keeps its own entry in its own history, with your reason attached, exactly as if you'd done it by hand.

Which is the short version of the whole design: a bulk run leaves the same trail as doing it one at a time, because underneath, that's precisely what it is.


For administrators

The two menu entries are added by a migration script that also removes the old Admin › SysAdmin Pages › Bulk Actions row, since that page no longer exists in the application.

No new permissions were introduced. If someone can close a work order from its own screen today, they can close a list of them tomorrow; if they can't, the page won't let them. Access is adjusted where it always was: in role permissions.


For any questions or concerns, please contact TrakIT Support.


Saturday, 15 August 2026

One Work Order - Its Own Books

Every job in TrakIT has one finance page for all of its work orders combined. That's exactly right when you're closing out the job - and exactly wrong when you only want to know whether this container is running a loss. Work Order Finance is a new page built for the second question.

Why this Exists

A job's finance page is comprehensive by design: every estimate, every actual, every account, laid out line by line. That's the right tool for approving a job or reconciling its books end-to-end. It's the wrong tool for a narrower, more common question - how is this one work order doing?

On a job with sixteen containers and forty line items, finding the handful of rows that belong to one of them means scanning a search box, squinting at the WO column, or exporting to a spreadsheet and filtering there. Work Order Finance is that filtered view, given its own page and its own address.

What's on the page?

Open a work order's finance page, and it reads like its job-level counterpart, because the intent is the same: a summary up top, working detail in tabs below - just narrowed to one work order throughout.

  • Work Order Information -Workflow, customer, commodity, weight, transporter, and whatever else matters most. The fields aren't fixed in code - an office or role can configure its own set, the same way column choices work everywhere else in TrakIT.
  • Account Summary - Income, expenses, gross margin, required margin, disbursements - estimate against actual - totalled from this work order's accounts only.
  • Estimates & Actuals - The full toolkit: add, edit, approve, hide, duplicate, tax, quick-edit, drag to reorder. Add an account here and it already belongs to this work order - nothing left to pick.
  • Analyse - Account master and category summaries, scoped the same way as everything above.
  • Audit Log - Who changed what, filtered to this work order's accounts - not the job's.
  • PDF - Print or download a copy laid out the same way as the screen.
Every total on this page, and every account you add from it, belongs to one work order. Nothing here reaches into the rest of the job - and nothing from the rest of the job leaks in. The job still holds all of it. Work Order Finance just gives one branch of that tree a door of its own.

What stays on the job page

A few things are deliberately missing here, because they were never really about one work order:
  • Job status & approvals
  • Request approval, close, cancel, reopen - a job moves through one status, not six.
  • Customer credit rating
  • A property of the customer, not the shipment leg.
  • Comments, invoices, bills, documents
These live where they were created - at the job level - and Work Order Finance links straight back to all of it.

Getting there

Every work order page now carries a WO Finance link alongside the existing Job Finance one. Follow it, and the address settles at /wofin-[id] - as direct as the page itself. Access follows the same finance permissions as the job page, narrowed by whatever work order filters already apply to your account: if you can't see a work order today, you won't see its finance page either.

Make it yours

The Work Order Information panel runs on the same column system as TrakIT's list pages. An administrator can add fields, remove them, reorder them, or set a different default for a particular office or workflow group - from the existing column admin screen, under Finance WO Info. Nothing about the panel is fixed except the mechanism for building it.


For any questions or concerns, please contact TrakIT Support.

Wednesday, 5 August 2026

Built for How Freight Forwarders Actually Work: Inside TrakIT's Approach to Workflow, Automation, and Africa's Complexity

Every freight forwarder eventually hits the same wall with off-the-shelf logistics software: the platform was built for someone else's business.

Maybe it assumes a workflow you don't follow. Maybe it charges more every time you add a team member. Maybe it was designed for a market where customs documentation is uniform and predictable - and then falls apart the moment you're routing a shipment through three countries with three different regulatory regimes.

TrakIT was built to solve that problem from day one, in the market where it matters most: Africa. Today it supports freight forwarders across 50+ countries, with deep, battle-tested coverage across 30+ African markets - and everything about the platform, from its workflow engine to its pricing model, reflects the lessons learned getting logistics software right in the world's most operationally complex trade corridors.


Your Workflow, Not a Template

Most logistics platforms give you a fixed process and ask you to adapt your business to fit it. TrakIT does the opposite.

Its workflow engine was designed around a simple reality: no two freight forwarders operate identically, and a forwarder moving goods through Lagos, Mombasa, and Douala can't run the same approval chain, documentation sequence, or exception-handling process as one working purely intra-Europe. Multi-country regulatory complexity isn't an edge case for TrakIT - it's the foundation the architecture was built on.

That means you can configure workflows around how your operations, compliance, and documentation teams actually work - not the other way around. Custom approval stages, conditional routing based on shipment type or destination, role-specific task assignment, and country-specific documentation requirements are all things you configure, not things you request from a vendor roadmap and wait months for.


Reporting That Runs Itself

Ask any ops manager what eats their week, and "pulling reports" is near the top of the list. TrakIT's reporting automation is built to take that off your plate entirely - scheduled reports generated and distributed automatically, so your team, your clients, and your partners get the visibility they need without anyone manually exporting a spreadsheet at 6pm on a Friday.

Because the platform understands shipment data natively, reports aren't static exports - they reflect the real-time state of your operations, filtered and formatted for whoever's reading them: a client wants shipment status, your finance team wants revenue by lane, your ops lead wants exception flags. Same underlying data, automatically shaped for each audience.


Automation That Actually Reduces Work

TrakIT's automated actions go beyond reminders. The platform can trigger real operational events based on rules you define - status updates cascading through a shipment's lifecycle, notifications firing when a milestone is hit or missed, documents routing to the right person the moment they're uploaded. It's the difference between software that tells you something needs attention and software that handles it.

Two features stand out here, both born from real forwarder pain points:

OCR bill of lading extraction - pull structured data directly from BOL documents instead of manually keying it in, cutting a slow, error-prone step out of your process entirely.

Natural language shipment queries - ask TrakIT a question the way you'd ask a colleague ("which Mombasa shipments are delayed past 5 days?") instead of hunting through filters and dashboards.


Integrations Without the Integration Headache

Freight forwarding doesn't happen in one system - it happens across carriers, customs platforms, client portals, and internal finance tools. TrakIT is built to connect to that ecosystem rather than compete with it, with an integration architecture designed to plug into the carrier and customs systems you already depend on. The goal isn't to make you migrate everything to one walled garden - it's to make TrakIT the operational hub that ties the systems you already use together.


Pricing That Scales the Way You Do

Here's where TrakIT breaks from almost every competitor in the space: no per-user fees. Add your whole documentation team, bring on seasonal staff, give your finance department visibility - none of it adds to your bill. For forwarders running lean, growing teams, or seasonal operations (which describes most of the industry), this alone changes the economics of adopting proper logistics software.


Why This Matters Most in Africa

Africa's freight forwarding market has historically been underserved by logistics software built for simpler, more homogeneous trade lanes. Multi-jurisdictional documentation, inconsistent customs digitisation, and highly variable regulatory requirements from country to country have made "off-the-shelf" software a poor fit for forwarders operating across the continent.

TrakIT was shaped by exactly that complexity - not adapted to it after the fact. That's the difference between a platform that tolerates African market conditions and one that was actually designed around them.


See It on Your Own Operations

The best way to understand what a purpose-built platform feels like is to see it against your own workflows, your own shipment volumes, and your own team structure.

Ready to see TrakIT in action? Request a demo, and we'll walk through how it fits your operation - no per-user pricing surprises, no generic sales pitch, just a real look at whether it's the right fit.

Tuesday, 28 July 2026

Faster searches with "Skip Count"

TrakIT features a new Skip Count checkbox in the filter panel on the Operations and Finance Jobs pages (located just to the left of the Search button) designed to significantly speed up slow searches.

How TrakIT Searches Work

Normally, every search triggers two separate database queries:

  1. Count Query: Counts every matching row to determine the total (e.g., “1,482 Found”) and calculates pagination. This can be slow on broad searches because the database must scan every matching record.
  2. Data Query: Fetches the specific rows for the current page (e.g., the first 20 records). This is typically very fast.

Enabling Skip Count bypasses the first query entirely, delivering your results instantly without waiting for a total count.

What Changes When “Skip Count” is Enabled

  • Pagination Limited to One Page: With no total count, the pager displays only a single page with no “next” option. Sorting and filtering continue to work normally. Note: You can select “Rows per page” (i.e. 20, 50, 100, 200) from the dropdown placed at the bottom of the result table.
  • Estimated Results Label: The results label changes from an exact count to “20+ Found” (indicating at least that many, and likely more). If fewer rows match than fit on a page, it displays the exact count (e.g., “12 Found”).
  • Export Restrictions on Operations: Export is temporarily hidden on Operations while the box is ticked (as exports require a real total to verify size limits). Finance Job exports remain unaffected.

When to Use It

  • Use it when you need a fast result for a specific item sorted near the top (newest jobs, highest value, etc.) and the grand total doesn't matter.
  • Leave it off when you need to measure data (e.g., “how many jobs are still open?”), plan to export data, or need to browse through multiple pages of results.
  • Pro Tip: If a search is running slowly, tick the box to quickly confirm you have the right rows, refine your filters, and then untick it once your search criteria are narrow enough.

Profile preferences

Your preference is saved to your user profile so it stays active the next time you open the page. Operations and Finance Job pages remember this setting separately. If you see “20+ Found” unexpectedly, check the filter panel to see if the box is still ticked from a previous session.

For any questions or concerns, please contact TrakIT Support.

Sunday, 28 June 2026

Export Exactly What You Need: The New Work Order Export

Exporting work-order data in TrakIT was never one-size-fits-all - you could already compose your own export and pick which columns to include. But the old experience was clunky, and once you'd chosen your fields, there was little you could do with them: no control over formatting, no alignment, no choice of which aspect of a field to pull. The redesigned Work Order Export keeps the composable foundation and rebuilds everything around it. The result is faster to work with and genuinely customisable down to the individual column - you choose the fields, their order, their format, and how the file is delivered, and TrakIT remembers it all for next time.


Here's how it works and why it matters.


It starts with your filters

The export always reflects what you're already looking at. When you filter the job list down to the work orders you care about - a customer, a workflow, a date range, a status - and click Export, TrakIT carries your exact query into the export. There's no re-selecting records and no risk of exporting the wrong set. If nothing matches, or you've selected more work orders than your organisation's limit allows, TrakIT tells you up front rather than producing an empty or oversized file.


A two-panel composer

The export window is split into two panels:

Available Fields (left) - everything you can add, organised into four tabs.

Selected Fields (right) - the columns your export will actually contain, in order.

Click any available field to add it; drag rows in the selected list to reorder them. The Work Order ID is always included as the first column, so every export is traceable back to the source record.


Four kinds of data, one export

The available fields are grouped into four tabs, each searchable with a live count:

Header - core work-order attributes: customer, shipper, transporter, origin and destination, container number and size, status, dates, and dozens more.

Events - operational milestones from the workflow.

Data - the custom data fields captured against your work orders.

KPIs - calculated performance metrics.

Mixing all four in a single file means one export can answer a question that used to require stitching several reports together.


Control every column

This is where the "composed" part earns its name. Each selected column carries its own settings:

Option - for Events and Data fields, you don't just get the value. You can pull the Value, the Remarks, Updated On, or Updated By. Want both the milestone date and who recorded it? Add the same field twice with two different options. For KPIs, you choose Hours or Days.

Format - apply an Excel format string like #,##0.00 for numbers or dd-MMM-yyyy for dates, so the file arrives report-ready.

Alignment - left, center, or right per column.

You can compose up to 30 fields per export - enough for a rich report, while keeping files fast to generate and easy to read.


Choose how it's delivered

When you're done, pick your delivery method:

Download Now - the file is generated and downloaded immediately. Perfect for quick, everyday pulls.

Send Email - TrakIT builds the file in the background and emails it to you, closing the window right away. Ideal for large exports, so you're never left watching a spinner or tying up your session.


Your layout is saved automatically

The columns you choose, their order, formats, alignment, and your preferred delivery method are all saved to your profile. The next time you open the export, your composition is already there. 

The benefits, in short

  • Self-service reporting. Build the exact report you need without waiting on a custom development request or a new template.
  • One file, four data domains. Header attributes, events, custom data, and KPIs together - no more merging spreadsheets by hand.
  • More than just values. Pulling Updated On and Updated By alongside a value gives you a built-in audit trail: not just what happened, but when and who recorded it.
  • Presentation-ready output. Column order, number/date formats, and alignment are baked in, so the file is ready to share the moment it lands.
  • Consistency across reports. Saved layouts mean recurring reports look the same every time - no drift, no rebuilding.
  • Built to scale. Background email delivery handles large pulls gracefully, while system limits and a 30-field cap keep exports fast and your environment healthy.
  • Speaks your language. Column names reflect your organisation's configured terminology (your own labels for customer, shipper, transporter, and more), so the output matches how your team actually talks about the business.

A few tips

  • Search before you scroll. Each tab has a search box - type a few letters to jump straight to the field you want.
  • Use two options on one field when you need both the data and its provenance (e.g., an event's value and who updated it).
  • For big date ranges, choose Send Email. Let TrakIT do the heavy lifting in the background while you carry on working.


The new Work Order Export replaces a rigid, one-size-fits-all download with a flexible report builder that remembers your preferences and adapts to your workflow. Filter, compose, and export - exactly what you need, every time.

For any questions, as always, please contact Support.