App builder

Watch every shipment in a carrier tracking app
that spots trouble before customers ask.

Describe the carriers you ship with and Netiva’s AI builds a web app that pulls their tracking into one list, queues the exceptions and logs what each customer was told — with a live preview and code you own.

Starter prompt

Build a carrier tracking web app for an online store that ships with three parcel carriers and one LTL carrier. Each shipment has an order number, customer email, carrier, tracking or PRO number, promised delivery date and status: Label created, In transit, Out for delivery, Delivered, Exception or Returned to sender. Every two hours, call each carrier’s tracking API with our stored keys and update open shipments. Queue failed attempts, customs holds, parcels with no new scan in 48 hours and carrier estimates past the promised date, each with an owner. Staff sign in, email customers from a shipment and every update is logged.

Build it in Netiva Paste the prompt into a new workspace and adjust it to your business.
Overview

Who this carrier tracking app is for

E-commerce and shipping teams that split orders across several carriers end up checking tracking one website at a time. A parcel that hasn’t moved in three days, a failed delivery attempt or a customs hold usually surfaces only when the customer asks where their order is, and then support has to find out what a colleague already said. A carrier tracking app built with Netiva pulls status from each carrier’s tracking API into one list, sends anything that needs a person to an exceptions queue and keeps a log of every update the customer received.

Key features

What your carrier tracking app can do

  • One list across carriers

    The app asks each carrier’s tracking API for the latest status of every open shipment on a schedule you set, then translates that carrier’s own event codes into the few statuses your team works with.

    • Refresh interval set per carrier to fit its request limits
    • Carrier event codes mapped to your own short status list
    • Delivered and returned shipments dropped from the refresh
    • Open shipments counted by carrier and status at the top
  • An exceptions queue with owners

    Shipments that need a person land on one list: failed delivery attempts, address problems, customs holds, parcels that have gone quiet and carrier estimates that now miss the date you promised.

    • A quiet-parcel threshold in hours for each carrier
    • Running-late flag raised while there’s still time to act
    • Owner taken from the signed-in teammate who picks it up
    • Stages from New to Waiting on carrier, Waiting on customer and Resolved
  • A log of every customer update

    Emails sent from a shipment page and notes from calls or chats sit on the shipment’s timeline, so the next agent to answer a “where is my order” message sees what was already promised.

    • Emails with the carrier’s tracking link, sent and logged in one step
    • Call and chat notes added by hand, tagged with the channel
    • A follow-up date on each update, with a morning reminder
    • Sender filled in from the signed-in agent
  • Carrier on-time and exception reports

    Each shipment keeps the promised date and the time of its delivery scan, so the app can show which carrier delivers on time for you and which one causes the most exceptions, month by month.

    • Share delivered on or before the promised date, per carrier
    • Exceptions by type and carrier for each month
    • Saved views for each carrier’s late shipments
    • A carrier page listing its open shipments and exceptions
Data model

The collections behind it

Netiva keeps your records in built-in collections. Here’s a starting structure — the agent adapts it to your prompt, and you can change it any time.

Shipments

One record per tracking or PRO number, linked to the order it fulfills.

  • Order number (required) From your store or order system Text
  • Customer email (required) Where shipment updates are sent Text
  • Carrier (required) Relation to Carriers
  • Tracking number (required) Or the PRO number for LTL freight Text
  • Promised by Delivery date promised at checkout or on the quote Date
  • Carrier estimate Latest estimated delivery date returned by the carrier’s API Date
  • Status (required) Label created, In transit, Out for delivery, Delivered, Exception or Returned to sender Text
  • Last scan at Time of the newest carrier event; for delivered parcels, the delivery time Date & time

Carriers

Each carrier you ship with and the rules the app applies to it. API keys are stored securely, not here.

  • Name (required) Text
  • Mode (required) Parcel, Postal, Regional courier or LTL Text
  • Refresh every (required) Hours between tracking calls for open shipments Number
  • Quiet after (required) Hours without a new scan before a shipment becomes an exception Number
  • Claim window Days to file a loss or damage claim, from the carrier’s own terms Number
  • Tracking link Pattern for the carrier’s public tracking page, used in customer emails Text
  • Account notes Account number, pickup schedule and your rep’s contact details Paragraph

Exceptions

Every shipment problem someone on the team has to handle, from first flag to resolution.

  • Shipment (required) Relation to Shipments
  • Type (required) Attempted, Address, Customs hold, Damaged, Quiet, Late or Delivered not received Text
  • Opened at (required) Date & time
  • Owner The teammate who picked it up, from their sign-in Text
  • Stage (required) New, Waiting on carrier, Waiting on customer or Resolved Text
  • Resolution Delivered after all, Reshipped, Refunded, Claim filed or Address corrected Text
  • Claim reference The carrier’s claim or trace number Text
  • Claim by From the carrier’s claim window; check how that carrier counts the days Date

Customer updates

What each customer was told about a shipment, when and by whom.

  • Shipment (required) Relation to Shipments
  • Exception Set when the update is about an open exception Relation to Exceptions
  • Channel (required) Email sent from the app, or a reply, call or chat logged by hand Text
  • Summary (required) The message sent, or the gist of the call Paragraph
  • Logged at (required) Date & time
  • Logged by (required) Filled in from the signed-in agent Text
  • Follow up on Leave blank if nothing more is owed to the customer Date

Required field. Types are Netiva collection field types.

Screens

Pages and screens to start with

A typical first version. Ask the agent for more, or annotate the preview to change any of them.

  • All shipments

    Open shipments from every carrier in one table with status, promised date and carrier estimate, filtered by carrier, status or order number.

    Signed-in users
  • Exceptions queue

    Open exceptions, unassigned and oldest first, with the type, hours since the last scan and any customer follow-up due today.

    Signed-in users
  • Shipment detail

    The full scan history fetched from the carrier’s API when the page opens, both delivery dates, linked exceptions and every customer update.

    Signed-in users
  • Add a shipment

    A short form for order number, customer email and tracking number that suggests the carrier from the number’s format and runs a first status check.

    Signed-in users
  • Carrier detail

    One carrier’s open shipments, exceptions by type, on-time share against promised dates and the time of its last successful refresh.

    Signed-in users
  • Follow-ups due

    Customer updates with a follow-up date of today or earlier, grouped by the agent who logged them, each linked back to its shipment.

    Signed-in users
How it works

From prompt to a live carrier tracking app

  1. List your carriers and statuses

    Tell Netiva which carriers and services you ship with, the statuses your team uses and what counts as an exception. The agent drafts collections for shipments, carriers, exceptions and customer updates.

  2. Connect each carrier’s API

    Register on each carrier’s developer portal, store the credentials as secure keys and ask the agent to wire up the scheduled refresh and map that carrier’s event codes to your statuses.

  3. Test with live tracking numbers

    Add a few real shipments, including one that’s already delayed, and check the list and the queue in the live preview. Annotate anything misfiled and the agent adjusts the mapping.

  4. Publish for support and shipping

    Publish in one click, have agents and shipping staff sign in and switch on the follow-up reminders. Every change is checkpointed, so a mapping edit that misfires can be rolled back.

Why Netiva

Netiva vs a traditional build

Building a carrier tracking app with Netiva compared with a traditional build
Criterion With Netiva Traditional build
Checking shipment status Open shipments refreshed from each carrier’s API on a schedule and shown in one list Pasting tracking numbers into each carrier’s website one at a time
Order status questions Every email and call note logged on the shipment, next to its latest scan Searching the shared inbox to find what a colleague already told the customer
Getting started Describe what you need in chat and watch it take shape in a live preview Hire developers, or stitch together templates, plugins and a hosting plan
Content and data Built-in collections with nine field types, bound straight to your pages Set up and connect a separate database or CMS
Making changes Ask the agent; every change is checkpointed and reversible File a ticket, wait for a sprint, redeploy
Hosting and domain Global hosting and automatic SSL; connect a custom domain from the Starter plan Buy hosting, then install and renew SSL certificates yourself
Code ownership Clean production code you own and can export Locked into a template, plugin or agency setup
Examples

Ways teams use it

  • A home goods store shipping with three carriers

    Support used to hear about failed deliveries from frustrated customers. Now the queue lists attempted and quiet parcels each morning, and agents email the customer before the customer writes in.

  • A parts distributor mixing parcels and pallets

    Small orders go by parcel and larger ones by LTL. PRO numbers and parcel tracking numbers share one list, and inside sales logs every call to a buyer whose pallet is held at a terminal.

  • A cross-border seller

    International orders sometimes stop in customs. Customs holds get their own exception type, the owner notes what the carrier needs, such as an invoice or duties from the recipient, and each update to the buyer carries a follow-up date.

Good to know

Before you build

  • Carrier API access is yours to set up

    Each carrier issues its own credentials, terms and request limits. UPS, FedEx and USPS use OAuth client credentials, for example, and DHL’s unified tracking API starts new keys at 250 calls a day, so set refresh intervals to match.

  • Not every carrier has an open API

    Some regional and LTL carriers offer tracking only on their website or to account holders. For those, connect a multi-carrier tracking provider’s API with your own key, or have staff update the status by hand.

  • Tracking is only as current as the scans

    Carriers record an event when a package is scanned, and their estimated dates move. The app shows what the last refresh returned, so don’t promise customers more precision than the carrier gives you.

  • Refunds, reships and claims happen elsewhere

    The app records the outcome, but refunds run through your store or payment system and claims are filed with the carrier under its terms. Netiva doesn’t import past orders; add open shipments or pull them from your order system’s API.

FAQ

Questions about building a carrier tracking app

Can one app track parcels from several carriers at once?

Yes, as long as each carrier offers a tracking API you can access. Netiva apps can call REST APIs with keys stored securely, so you ask the agent to connect each carrier and translate its event codes into your own statuses. Everything then lands in one list. For a carrier without an API, connect a multi-carrier tracking provider or update those shipments by hand.

How often does the carrier tracking app check for new scans?

As often as you set for each carrier. A scheduled job asks the carrier’s API for the latest status of every open shipment, skips anything already delivered or returned and updates the list. Keep the interval inside each carrier’s request limits; some accept several tracking numbers per call. The shipment page fetches the full scan history when someone opens it.

What should count as a delivery exception?

That’s your call, and each type is a value in the exceptions collection. Most teams start with failed delivery attempts, address problems, customs holds, damage, returns to sender and parcels with no new scan for longer than that carrier’s threshold. Add a late type for when the carrier’s estimate passes the date you promised, and another for a customer who reports a delivered parcel missing.

Can agents email a customer about a delayed package from the app?

Yes. Netiva apps can send email, so the shipment page can have a button that sends a message with the order number, the latest status and the carrier’s tracking link, then logs it as a customer update. A scheduled email reminds the agent when a follow-up is due. Updates go by email only; the app doesn’t send text messages or push notifications.

Can the app track LTL freight by PRO number?

Yes. Store the PRO number in the tracking number field and set that carrier’s mode to LTL. Many LTL carriers offer tracking APIs, though what they return varies and often has fewer events than parcel tracking, such as pickup, terminal arrivals and delivery. Give LTL carriers a longer quiet threshold so normal gaps between scans don’t fill the queue.

Do I need a paid Netiva plan to connect carrier APIs?

No. Calling third-party REST APIs works on every Netiva plan, including the free plan, so you can build and test the app against real tracking numbers from the start. Publishing it on your own domain needs the Starter plan or higher, and paid plans add capacity and features. Compare the current plans on Netiva’s pricing page before you move the team over.

Drafted with AI assistance from Netiva’s product pages and reviewed by the Netiva team. Example data models, screens and prompts are illustrative starting points, not customer projects.

Build your carrier tracking app today

Describe it in a sentence and watch Netiva’s agent build it. Free to start — no credit card required.