OBLYTECH Logo
OBLYTECH Logo
ServiceNow App Engine and Low-Code for Logistics and Transportation
Home / Guides, Services and Solutions / by Industry / for Logistics and Transportation / ServiceNow App Engine and Low-Code for Logistics and Transportation

ServiceNow App Engine and Low-Code for Logistics and Transportation

What a low-code application should do in a logistics operation

A logistics business already runs on large systems of record: a transport management system that plans loads and routes, a warehouse management system that controls receiving, putaway and picking, a telematics platform that knows where every vehicle is, and a billing system that turns movements into invoices. App Engine does not replace any of them. Its job is the work that falls between them: the exception nobody has a screen for, the checklist still done on paper, the approval that lives in an email chain, and the request a driver cannot raise without phoning a supervisor. A well-built low-code application gives that work a structured record, a clear owner and a status the person who raised it can see.

The applications that earn their place in a freight or parcel operation share a shape. They capture something that no existing system records, they read the shipment, vehicle or depot identifiers from the system that owns them rather than retyping them, and they hand off to the operational system when a decision changes a plan. The sections below describe the common cases.

Failed deliveries and damage claims as structured records

When a delivery fails, the transport system usually records only that it failed. Why it failed, what the driver saw at the door, whether the consignee refused or was absent, and what the customer was told afterwards tend to live in free text or in nobody’s memory. A low-code application can hold a failed delivery record with a controlled list of causes, the photographs and notes the driver captured, the follow-up action and the person responsible for it. Damage claims follow the same pattern: the record carries the consignment reference read from the transport system, the condition on receipt, the evidence, the claim value once finance has confirmed it, and the state of the claim with the carrier or insurer. Because causes are coded rather than typed, the operation can finally see which depots, lanes or packaging types produce the most exceptions.

Depot and vehicle inspection checklists

Walk-around checks, dock and racking inspections, cold-chain equipment checks and yard safety rounds are often recorded on paper or in a spreadsheet that nobody reads until something goes wrong. A low-code checklist application gives each inspection a template, a schedule, a named inspector and a result per item, with a defect automatically becoming a task for the maintenance team or the depot manager. The vehicle and equipment identifiers come from the fleet register, so a defect is tied to the right asset without a separate list being maintained. The value is not the form itself but the trail: who checked what, when, what was found and whether it was fixed before the asset went back into service.

Driver documents and qualification requests

Drivers need licences, dangerous goods certificates, medical checks and site inductions, and each one expires. The regulated record of hours and qualifications belongs in the fleet or HR system that the regulator recognises, but the process around it is a good fit for a low-code request: a driver or supervisor raises a renewal, attaches the evidence, the compliance team reviews and approves it, and the confirmed date is written back to the system that owns the qualification. The application also gives a driver a place to ask for a new site induction, a replacement fuel card or a change to a document, with a visible status instead of a phone call to the depot.

Approvals for ad hoc charges and waivers

Waiting time, redelivery fees, demurrage, out-of-hours surcharges and goodwill waivers are decisions that need an approver and an audit trail, and they are often agreed by message and keyed into billing later. An approval application captures the request with the consignment reference, the proposed charge or waiver and the reason, routes it to the right approver by customer and amount band, and records the decision. Billing then receives an approved, coded adjustment rather than a free-text note. The approval rules themselves can mirror the delegation levels the finance team already uses, so the application enforces what the policy says rather than inventing a new policy.

Showing shipment data without owning it

Most of these applications need to display shipment status, vehicle position or stock availability to the person handling an exception. The right pattern is a read-only view fed from the transport, telematics or warehouse system, refreshed from the source each time the record is opened, and never edited inside the application. The moment an application stores its own copy of a shipment status, planners start to trust whichever system they happen to have open, and the two drift apart. Reading the identifier and the current status from the system of record keeps the application honest and keeps the operational system authoritative.

Boundary rules to agree before the first build

Three rules keep a low-code program in a logistics operation from turning into a second dispatch system. The application never assigns, routes or schedules work; those decisions stay in the transport system, and the application hands exceptions to the planner who makes them there. Every shared field, such as a consignment number, vehicle registration or depot code, is read from its owning system and never created in the application. And every application has a named owner in operations who can say what it is for and when it should be retired. With those rules written down, the decision of whether to build a given application at all becomes much easier, and that decision is the subject of the next section.

Deciding whether an exception app is the right answer at all

An operations systems lead at a freight business often receives the same request from several directions: a planner wants a screen for failed deliveries, a depot supervisor wants a form for damaged freight, and a customer service manager wants a single place to log claims. Building three small applications is the path of least resistance, and it is often how a logistics operation ends up with three partial copies of the same shipment record. This section is for citizen developers, operations systems leads and App Engine owners who are deciding when a low-code application is justified in a round-the-clock operation, and when the need is better met by a standard feature or by the operational system that already exists.

A simple test helps. If the application would hold a copy of data that the transport management system or the fleet platform already owns, it is probably a symptom than a solution. If it captures a new kind of information that no current system holds, such as a structured record of why a delivery attempt failed, it is a reasonable candidate for a low-code build.

Build, configure or integrate: a decision table

Need Preferred approach Main risk if chosen wrongly
Record a new exception type that no system captures Low-code application with a narrow data model Growing into a second dispatch system
Show shipment status to a planner who already uses the TMS Integration or read-only view Copies of live status going stale
Standard approval for a damage claim Configure an existing workflow or approval flow Rebuilding approvals that the platform already supports
A driver-facing form used on the road Mobile-ready form, tested on the devices drivers carry Forms that fail when connectivity drops

In practice the integration row is one that teams often skip, because the team is focused on the screen than on the data behind it.

Governing a low-code build in a round-the-clock operation

  1. Assign an application owner who sits in operations, not only in IT. The owner decides what the application is for and when it is retired.
  2. Write the data model for the one exception type in scope, with each field tied to a decision someone makes. Remove fields that exist only because a spreadsheet had them.
  3. Agree the source of truth for every shared field, such as shipment identifier or depot code, and confirm that the application reads it rather than storing its own version.
  4. Test with live route data copied into a non-production environment, not with a tidy sample. Sample data often hides the odd cases that dispatch sees every day.
  5. Run a supervised pilot on one depot and one shift, including the night shift, before rollout.
  6. Set a review date for the application and a named process for retiring it if the underlying need goes away.

Typical failures once the app is live

A common pattern is the shadow dispatch. An exception app gradually acquires assignment fields, status changes and routing notes, until planners use it as their working list. At that point, the TMS and the app disagree, and nobody knows which one a delivery is actually following. Stop this early by keeping assignment out of the app, and by making the application show the TMS status rather than recording its own.

A second pattern is the app that works in daylight. Drivers use it at depots with reliable connectivity and abandon it on rural routes, so exceptions are recorded later from memory. Test the form with the connection interrupted, and decide how an offline entry will be reconciled before the app goes live.

Signs the application is earning its keep

Watch whether exceptions are being recorded at the point they occur, whether the cause field is filled in consistently, and whether the people who reported the problem get a status update. Adoption on its own is a weak signal, because a form people are forced to complete can show high use and poor data. Pair usage with the quality of what is recorded.

Should drivers use a ServiceNow form or the driver app the transport management system provides?

Where the TMS driver app already captures the event, use it and keep the platform for the follow-up. Asking drivers to record the same event twice is one of the surest ways to get poor data. Use a platform form only where the TMS has no equivalent event type.

Who maintains the application when the person who built it moves on?

The application owner, who is in operations, should hold the knowledge of what it is for. The build knowledge should be recorded in the application’s own documentation and in the governance record, so a new builder can pick it up without reverse-engineering the screens.

How do we stop an exception app from becoming a second dispatch system?

Keep assignment, routing and scheduling outside the app. Let the app record exceptions, show the status that comes from the system of record, and hand off to the planner. A review of the field list every quarter will catch drift early.

Can exception data from an app feed billing?

It can, but only after the billing team agrees the event definitions and the source of the amounts. Passing a free-text cause into a billing adjustment is a fast route to disputes, so map the event types first.

If you want a second opinion on whether an app is the right tool, a ServiceNow specialist is the place to start. How builds are governed is set out in App Engine platform engineering, and scoped application boundaries explains how to set a build boundary first.

Frequently asked questions

Which logistics exception should be the first App Engine application?

Start with the exception that is recorded nowhere today and costs money when it is lost, which is usually the failed delivery or the damage claim. Both have a clear owner in operations, a consignment reference that can be read from the transport system, and a cause that can be coded rather than typed. A first build that proves coded causes and clean handoffs makes every later application easier to justify.

How do we stop a low-code application from becoming a second dispatch system?

Write the boundary down before building: the application never assigns, routes or schedules work, every shared identifier is read from the system that owns it, and shipment status is displayed from the transport system rather than stored. Review the field list on a fixed cycle, because drift towards assignment fields and routing notes is gradual, and give an operations owner the authority to remove fields that have crept in.

Can drivers use these applications on the road?

They can, provided the form is tested on the devices drivers actually carry and with the connection interrupted, since depots have good coverage and rural routes often do not. Where the transport system's own driver app already captures an event, use that and keep the platform for the follow-up, because asking a driver to record the same event twice produces poor data in both places.

Talk to Oblytech

Planning, running or fixing a ServiceNow programme? Tell us where you are and we will suggest a sensible next step.

Contact us