New Features Sharpen TeamWherx More Than Before


Another great improvement to the Dispatching module is here! The newest feature makes it possible to display orders in different areas of the application based on the group a client is assigned to and the group the current user has access to view.

  • It provides a new way to organize our order dispatching functionality.
  • Customers can control the visibility of orders by assigning clients to groups.
Use Cases
  1. A potential customer interested in our dispatching capability has 66 branches across the country. They want each branch to view and control their own set of orders. The existing Dispatching module functionality doesn’t meet their requirements because all branches would see all orders. The only viable work around is to create 66 separate accounts, which involves a significant increase in onboarding time, maintenance requirements, and integration projects. With the new client group feature, each branch can see their own set of orders.
  2. A customer has 10 locations doing delivery and pickup dispatches with an average of 400-600 a month. Currently, every web user can see all orders regardless of the location group they are member of. With the new feature, each location can assign clients to their group. As a result, dispatchers will only see orders for the groups they can view.


Adding clients to groups

1) Administrative>Groups

The Groups section in the web portal has been modified to incorporate Client grouping. For this purpose, the Geofences panel has been re-labeled Locations and contains two collapsible areas: Geofences and Clients.

After editing the Locations panel, a screen displaying both sections is presented for administrators to allocate members, similar to how we currently make users and vehicles members of a group:

2) Client screen

A new section has been added to the client configuration screen. Group (member of) is located below the client name, allowing users to assign groups from the list of groups they currently view:

Creating a new order

When clients have been assigned to groups, users can only create new Orders and Recurring orders for clients in groups they can view. Everyone can see unassigned clients.

Groups column in grids

A column for client group membership has been added to the following grids.

As depicted in the image below, the Actsoft Inc client is a member of the Orlando, Miami, and Tampa groups.

Orders grid

Clients grid

Order history

The old user Groups label in the left search panel has been renamed User groups and Client groups has been added as a new search parameter , and as a column in the grid:

Active orders

Active order totals in the Dispatching>Dashboard and Orders grid will reflect client grouping:

Other sections affected by client grouping

Client search in the following sections will only return clients in groups the user can view:

  • Maps in the History section
  • Live view
  • Scheduler map
  • Orders grid filter
  • Clients system list in Wireless Forms
  • Dispatching Reports

Scheduler special case

Orders for Clients in a group the dispatcher is not able to view, but assigned to mobile users they can view, and will show in the Scheduler as an order scheduled but disabled to the dispatcher.

Example: Miami User is a member of the Miami group. They were assigned an order for client Marriot Orlando, who is a member of the Orlando group. The Miami dispatcher will see the order on the scheduler, but they cannot edit it. The Scheduler shows the order to make them aware that the user already has a job scheduled and to avoid overlapping:

Client Import

The client import interface has been updated with a new parameter: Client group name. Customers can now import a client and assign it to an existing group.

Note: The importer only accepts one group per client. If a client needs to be placed in multiple groups, it has to be done manually.

Customer API V2

The following client API methods have been updated with a new GroupNames parameter:

  • Create a client
  • Update a client
  • Get a client
  • Get a list of clients

"Contact": {
"Name": "string",
"PhoneNumber": "string",
"Email": "string"
"GroupNames": ["string"]


Currently, attachments fields are only available to dispatchers uploading a file to a Service form in the Web application. We are now expanding file attachments to all areas of our application using forms like Wireless forms, Timekeeping forms, and Status forms. From now on, the mobile application and Customer API will also support file attachments.

  • Different types of data files can be interchanged using our forms.
  • Mobile users can upload a file from the handset and send it to people in the office.
Use Cases
  1. Environment LLC is specialized in geologic investigations. Their field technicians use our mobile application to submit photos with territory information, but they also make short videos of landscape conditions as part of the investigation. So far, they have been recording videos and sending them by email, but they would like to attach video files to forms for better data organization. They can now attach a video file to the form.
  2. This company is considering the use of our Public Forms functionality to place a link on their website and collect customer information. One of their requests is the ability to upload different file types and send them to the office for review. Our application is now ready to meet their needs.


We have added Attachment as a new field type available in the module settings for Timekeeping forms, Wireless Forms, and Status forms.

a) Configuring an Attachment field in Timekeeping

In the field settings, users are notified about file size limitations and file types accepted with their extensions. The maximum number of attachments accepted per field is 10.

b) Attaching files to a Wireless Form in the Web app (My forms).

Web users can attach files in the same way they currently upload images to a camera field. Clicking on the attachment icon will open the default File explorer interface. Only accepted file types will appear as available for selection from the list:

c) Attaching files to a Wireless Form in the mobile app.

Tapping on the Attachment field will bring you to the native device browser, displaying a list of available files to select. After the selection is made, the attachment field bar is highlighted in light blue and indicates the number of files added to the field. Selecting any of the individual files allows the user to open and view the file.

d) Downloading attachments in the web portal

Once the form is received in the web portal, customers can download the files locally. Clicking over each file name will open a download confirmation window, and the browser download interface will open.

e) Attachment fields in reports

Attachment fields in reports indicate the number of files attached to the field:

Attachment fields are not included in Ad-Hoc Reports.


The Client Address Book was implemented a few months ago. We are now introducing the ability to import client addresses through our File Import section. This is a perfect solution for customers looking to refresh one or several clients with multiple addresses.

  • Users can update client addresses via upload from a file, versus having to add one by one manually in the web portal.


Client addresses has been added as an individual import item to the list of file types:

Note: Clients must exist in the system in order for the address import to work; therefore, new clients cannot be created through the client address import.

Once in the field mapping interface, users will link columns from the file to the Client addresses system fields:

Important rules for the import:

  • Client names are unique and must already exist in the account prior to the import. Failure to ensure that clients are properly named and configured may result in import errors.
  • Insert new record: This option will add new addresses to a client’s address book.
  • Update existing record: This will try to update existing addresses, based on the value mapped to Address name.
    • Address names are not unique, so all addresses that match the name for that client will be updated.
    • Address names can be blank; therefore, when an address name in the import file is blank, a new address is inserted.
  • File import will update clients regardless of the activation status; thus, inactive clients can be updated.
  • If there is more than one row marked as "default address" in the import file, the last address marked will be set as default.
  • Default address for orders? cannot be empty.



Currently, the Orders screen has a filter that only supports filtering based on the order Start date. We have expanded this capability with more filtering criteria and made it possible for users to customize the filter. Customers can now define up to 10 specific conditions from order information.

  • It gives users more flexible control over the information displayed on the grid.
  • Customers can combine a set of different criteria to narrow down orders displayed.
Use Cases

A logistics company operates a fleet of semi-trucks with trailers, and they use our tracking and dispatching capability to manage their operation. There are two daily shifts: The night shift is responsible for creating orders and loading trailers, and the morning shift assigns drivers and runs the day operation. At present, day supervisors are filtering the orders grid by start time and grouping columns to organize the grid. Due to the high number of orders, ranging from 150 to 200 daily, they need a more complete filtering mechanism. The updated filter allows them to combine different order criteria and display exactly the data they need.


The new filter has the same concept as report search conditions. Users can add up to 10 conditions to limit orders displayed on the screen:

Totals in the active orders bar are also updated following the data filtered:

Columns and operations available by field types

Multiselect fields:

  • Client name
  • Client groups
  • Service
  • Status
  • Assigned
  • Drop-down client details field



Boolean field (True/False)

  • Recurrence

Equals (Yes/No)

Date time fields:

  • Start time
  • End time
  • Last status time
  • Date/Time client details field


Is after

Is on or after

Is before

Is on or before

Text fields:

  • Location
  • Order number
  • Reference number
  • Text client details field



Numeric fields:

  • Number client details field


Does not equal

Greater than

Greater than or equals

Less than

Less than or equals

Similar to the functionality in Ad-Hoc Reports, all conditions added are connected with the AND logical function. Therefore, results will meet every one of the conditions.


Once a work order has been dispatched to a user, there is no way to open the order, remove the user, and return the order to an unassigned status. In response to this limitation, we have implemented the ability to return an order to the “New” status until the dispatcher determines who to reassign it to.

Use Cases

Company A assigns jobs to users early in the morning following a calendar. When users call out sick, the order needs to be un-dispatched until they find a new employee to assign it to. They also need a similar solution for recurring orders. Often, a recurring template needs to be changed when the user is no longer available so that upcoming orders are not automatically dispatched. The new feature allows dispatchers to remove the user from the order until they are ready to dispatch it again.


A clear icon has been added to the user field in the Order screen and Recurring order templates. Once selected, the user is removed, and the order is set back to the New status:

For regular Orders, once the user is removed, a confirmation dialogue box is presented:

Confirming the removal will delete the order from the mobile application, and it will return to the New status until further changes are made.

For Recurring orders, unassigning the user will not affect orders already created.


We also listen to our internal customers! The Tech Support team has requested to display customers’ account numbers in the web portal. Many times, they receive a call and it’s difficult for advisors to pull the right account with the company name provided.

  • The new option helps provide a better customer experience.
Use Cases

A customer calls us and provides the name of their business, but it does not match any search in our system. To save time, the advisor guides the customer to find the billing account number in the web portal and pulls the correct account.


We have added the customer’s billing account number in the Administrative> Settings section of the web portal.


Developers can utilize the Customer API to extract or update data within our application. The following client address methods have been added to the Client endpoint in the Customer API V2.

  • These methods are a great option for customers looking to manage their address books through our API.

API methods for client addresses (locations)


  • Create and Update methods can set a Location as Default Address.
  • We have established a maximum of 100 client addresses (locations) per client. This limit applies everywhere in the application (UI, Customer API, etc.).


At present, customers can pull clients and users in the customer API is by its ID. Our Professional Services team has expressed the need to find specific clients or users through the customer API by providing the name as input.

  • The new methods provide an easy way to find records that match or contain the provided name.

API method to find clients by Client Name

Retrieves a list of clients according to search parameters.

Query: string, required, NOT case sensitive

Field: enum string (Name), required

Mode: enum string (ExactMatch, Contains), required

API Method to find users by Username or Full name (First + Last)

This retrieves a list of users that match the specified search criteria. You must specify required search {query}, {field} and {mode}.

Results are automatically sorted by User's full name, and in ascending order. Sort parameters are not configurable. The limit of records to be returned is 2,000. It is not case sensitive. The method returns active and inactive users.

Query: string, required, NOT case sensitive

Field: enum string (FullName, UserName), required

Mode: enum string (ExactMatch, Contains), required