Release notes
Start from the list you were sent
Highlight
Start from the list you were sent. The warehouse emails the orders that are packed. A customer's spreadsheet names the ones to pull. Until now, acting on a list like that meant searching for each order, or building a filter that happened to catch them all, and a list rarely lines up with one date or one status. Paste IDs on the Orders table takes the list as it is, finds every order on it, and lets you act on them together.
The figure here shows the flow in three panels. You paste a list of Nash IDs, external IDs, and reference IDs. Nash finds every matching order whatever its date or status, and lists the IDs it couldn't find. You then run Dispatch, Mark as picked up, Archive, or Unarchive on the orders each action applies to, and read which were done, skipped, or failed.
- Paste what you have. Up to 1,000 Nash IDs, external IDs, and reference IDs, mixed in one list and separated by new lines, commas, semicolons, or tabs. Matching is exact and case-sensitive, and it ignores the table's date range and filters, so an order from last week and one for tomorrow come back together. Your organization and location access still apply.
- See what matched, and what didn't. A Matched ID column says which identifier found each order, an ID shared by several orders brings back all of them, and the IDs that matched nothing are listed with Copy IDs, ready to send back to whoever made the list.
- Act on the ones that qualify. Dispatch, Mark as picked up, Archive, and Unarchive each show how many orders they can change and how many they'll skip, with the reason. Orders an action doesn't apply to are skipped, never changed, and a run changes at most 1,000 orders.
- Know how it went. A run shows its progress, then which orders were done, skipped, or failed, and why. If it stops partway, it names the orders it couldn't confirm, so you check those before running it again.
(For organizations with the Orders page turned on.) See Find and act on a list of orders.
New & improved
Portal
- Archiving several selected orders, or every order matching your filters, asks for a reason, as archiving one order does. The reason is saved on each order.
- Filter the Orders and Routes maps from the map. Tools → Filters holds the table's filters, such as pickup and dropoff store, tags, and dispatch status, and a filter set in either place applies in both. Its Route metrics conditions narrow routes by Boxes, Distance, Duration, and Stops in your display units, in the optimization review as well, and Sort routes orders by the same numbers. See Plan routes on the Orders map.
- When you add orders to a route, Nearby routes leaves out routes whose vehicle lacks a capability the orders require and says how many it hid. A vehicle that meets every preference is marked Preferred. (For organizations with Routes turned on.)
- Edit sequencing, in a route stop's menu, sets a Sequence Priority, Sequence Group, and Mutually Exclusive Label on the stop's order, for the next time the route is optimized. A smaller priority is visited earlier. (For organizations with Routes turned on.)
- A route's Activity tab lists everything that happened to it in time order, with Load earlier activity for older entries. A dispatch entry links to its job, and each optimization run links to its record.
- On Execute, set an exception's status from its card, Needs Triage, Acknowledged, or Resolved, and choose its Severity when you add one: Auto, or P0 through P3. Select routes in the table to Assign to someone, or Clear assignee, on their open exceptions. (For organizations with Execute turned on.)
- Open a delivery window on the calendar for a Booked orders tab: the orders holding a slot in it, with their addresses and how many slots are used. Calendar blocks are colored by whether a window is open, within an hour of its cutoff, or closed, and a shift that has a route opens with Route and Activity tabs. See Delivery windows.
- Three new preferences. Business Day Starts At makes a day on Deliveries, Orders, and Shipping run from the hour you choose to the same hour the next day. Map Starting Point opens empty maps on your operating area. And each person can choose their own Date-range presets on their Account page. See Display preferences.
- Settings → Preferences, Organization Settings → Operations, and tracking customization each have an Audit log tab that lists who changed a setting, when, and the old and new values. It appears for roles that can read the audit log.
- A Webhooks button on a job's details opens the webhook logs filtered to that job.
- A delivery's timeline records each masked call when it ends: whether it was completed, unanswered, or failed, who called whom, and how long it lasted.
- Est. Duration, under Manage Columns on Deliveries, shows the planned driving time beside the driving distance.
- The Driver Geolocation notification trigger measures distance in Kilometers as well as miles.
Orchestration
- Address a workflow's Send SMS or Send email to a Role or a notification Destination, as well as to a contact you type in. Members and contacts are looked up when the workflow runs, so a later change to the role or destination needs no edit to the workflow. See Send to a role or a destination.
- A new Send to destinations action notifies every contact on the destinations you choose, each on its own channel, from one step. It's available on workflows that run in the background.
Nash Agent
- An agent with a structured output says when a run finished but didn't do its job, because data it needed was out of reach or its results are incomplete. The Portal marks that run Needs attention rather than completed, separately from a run that failed. See Structured output and writing results back.
- A chat with an agent that acts on child organizations reaches those organizations too, using your own sign-in, so you reach the children where you hold a role. Until now only its scheduled and manual runs did. (Opt-in.)
- Ask in an agent's chat to add or remove one of its skills, or to put it back on the default set. The change goes through the same review as any other edit to the agent.
- Balanced and the OpenAI option under Nash Agent Settings → General → Model move to each provider's latest model. Organizations and agents already on either option move with them.
- In chat, wide tables stay within the chat's width and scroll sideways, timelines connect their steps and mark the current one, and callouts carry an icon for their tone.
- The Nash MCP server can add a driver and place them in a driver group:
create_couriercreates a driver from a name and phone number, andupdate_driver_group_membersadds or removes a group's drivers. Creating a driver texts them the Driver App links.
Fleet
Driver App changes reach phones on version 1.12 on their own and apply the next time the app starts.
- Drivers can pick Business Closed as the reason for an attempted dropoff.
- The proof-of-delivery camera has a flash control, Auto, On, or Off, and starts on Auto, so it fires in the dark on its own. The torch button is unchanged.
- A pickup stop shows the total weight of the orders being loaded.
- An activity a driver times on a route, such as a break or refueling, is recorded as it starts and stops, including offline, and a running timer comes back if the phone has lost track of it.
Platform API
- A failed optimization says why. When the engine rejects a request,
GET /v1/activities/{id}returns itsvendor_messageandvendor_reasonsin theresult, and a reason that points at a position in the request ends with the Nash ID it refers to. The Portal shows the same reasons on the failed run. See Route optimization.
Fixes
Portal
- Rows you selected in the Orders and Routes tables stay selected on the same records when the list refreshes or reorders.
- Dispatchers hear the chat sound when a driver sends a message, and get a browser notification when the Portal is in a background tab.
- Running an optimization to review it, without saving or dispatching, leaves orders on the routes they're already on when the proposed plan doesn't place them. (For organizations with Routes turned on.)
- A route card's Times are out of date mark survives a reload and shows for an edit a colleague made, until the route is recalculated or re-optimized.
- On Execute, the routes table keeps its header in view as you scroll, pickup time, stops, and end ETA line up under their headers, and Call driver on the map dials the assigned driver. (For organizations with Execute turned on.)
- The Updated tab of an audit log lists the records that were modified.
- Saving delivery window settings under Organization Settings → Operations keeps the dropoff cutoff times and automatic reassignment choice already set.
- The provider selector on a contract lists active providers only.
- Batch rows on Shipping show their locations, progress, times, distance, and package totals, with the batch's last destination as the dropoff.
Orchestration
- Random Grouping in dispatch automations keeps an order in the same group when the order is updated. Its number now comes from the order's ID, so orders may land in a different group than they did before the change.
Nash Agent
- A failed run on an agent with a custom notification template sends a message that says the run failed and why, rather than an empty one.
- An agent watching a delivery or route on an interval carries on after a Nash service restart.
- A run on the OpenAI option whose request gets no response is retried, then falls back to a Claude model if OpenAI stays unreachable.
Fleet
- Photo and signature uploads on a weak connection retry on their own with longer waits each time. A queued action the server rejects shows as failed, for the driver to retry or discard, rather than staying on syncing.
- Correcting a failed item to delivered at a dropoff takes the order off the return stop, so finishing the return doesn't mark a delivered order as returned. A return stop left with no orders is removed.
- Unassigning a driver from a route leaves stops the merchant already canceled, and stops already delivered, as they are.
- Reassigning a dispatched route to a different driver group no longer carries the previous group's driver onto the new deliveries.
- Tracking continues on a multi-stop route that runs past its planned window while the driver still has goods on board, so ETAs and statuses keep coming for the remaining stops.
- Pickup and dropoff ETAs on your own fleet's point-to-point deliveries hold steady between refreshes, and the dropoff ETA right after pickup is calculated for the dropoff.
Integrations
- Nash's tags and Additional details are written back to a Shopify order even when a value, such as a long pickup location name, is over Shopify's 40-character tag limit. The tag is shortened and the full value stays in Additional details.
- A Shopify order placed after a shipping rate was quoted at checkout is dispatched with the placed order's line items.
- A Leajlak delivery shows the driver as arrived at pickup when Leajlak reports Reached Shop.
- Frayt receives five-digit US ZIP codes, so an address stored with a ZIP+4, or a ZIP missing its leading zero, dispatches.
- When Team Global Express rejects a manifest because the receiver has no email, Nash resubmits it with the default receiver email set for the provider, when there is one.