Bug Fixes for Version 1.77

Modified on Mon, 1 Jun at 5:50 PM

Definition

The release notes refer to different sections of the application:

Back Office: Where Customer Service Representatives (CSR) create and edit orders, create accounts, review drivers, etc.

Dispatch Board: Where Dispatchers assign orders to drivers, get notifications for invalid orders, etc.

Auto-Dispatch: This section refers to the automated order assignment setup and its process.

Administration: This section is in the Back Office but refers to sections only an administrator will use like Settings and Pricing.

Customer Portal: Where account users log in to create orders, view their order history, enter a credit card, etc.

Tracking site: Where customers enter a tracking number like the order ID or a reference number to view the status of their order.

OData: Data fields and variables saved in OData.

Account API: API provided to your accounts to create, update and get orders. For documentation, please follow this link:https://api.dispatchscience.com/
Tenant API: API provided to you to create orders for your accounts, retrieve invoices and change invoice status. For documentation, please follow this link: https://api.dispatchscience.com/  

Bug Fixes Included in this Release

BackOffice — Localization

  • Several labels appeared in English when the interface was set to French
    When using the back office in French, certain labels across various areas of the application remained in English instead of displaying the correct French translations. These strings have been corrected.

BackOffice — Multi-Segment Orders

  • Automatic segment status update did not work for orders created from a template
    When the tenant option Update segments status automatically on last segment status update was enabled, the automatic status propagation to intermediate segments worked correctly for manually created multi-segment orders but not for orders created from a template (including via recurrences). This has been corrected so that the behaviour is consistent regardless of how the order was created.

BackOffice — Orders

  • Fuel surcharge was recalculated on invoiced orders when editing unlocked fields
    When an order was invoiced and the tenant setting Can Invoiced Orders Be Edited was disabled, editing unlocked fields (such as internal notes or attachments) caused the fuel surcharge to be unexpectedly recalculated. The fuel surcharge is now locked on invoiced orders unless Can Invoiced Orders Be Edited is enabled.


  • Barcode Generation with Reference FieldsWhen using a reference field or order id with a custom template to generate item numbers, barcodes were previously not permanently tied to individual parcels. As a result, deleting parcels would cause item numbers and associated barcodes to be renumbered. With this update, barcodes are now permanently assigned to parcels once generated. Deleting parcels will no longer trigger renumbering and previously assigned item numbers will not be reused when adding new parcels.


  • Total Price column was visible to roles without price permission
    For roles without price-viewing permission (such as Dispatcher No Price), the Total Price column remained visible in the Orders list, even though pricing was correctly hidden in order details and on dispatch boards. The Orders list now respects the Orders > Prices role permission.

BackOffice — Drivers

  • Driver Work History did not refresh when changing the date filter
    When changing the date filter in Driver Work History, the displayed data did not refresh and driver movement was not rendering correctly on the map. Work history now updates based on the selected date range, and driver movement displays accurately for the chosen timeframe.


Dispatch Board

  • A board set as default could not be unselected
    On the Boards Management screen, clicking the star icon on a board already set as the default had no effect. Users can now click the star on a default board to deselect it, which causes the Dispatch Board menu to open the boards list instead of navigating directly to that board.

Tenant API — Attributes

  • Changing an attribute type from OrderAndDriver to Driver via the API returned a validation error
    When using PATCH /api/v1/attributes/{id} to change an attribute's type from OrderAndDriver (2) to Driver (1), the API returned a 400 error because isAvailableForOrders was still set to true, requiring users to explicitly clear it in the same request. The API now automatically adjusts incompatible visibility flags when the attribute type is changed, consistent with the behaviour in the UI.

Tenant API — Drivers

  • The Get Drivers API did not return archived drivers
    There was no way to retrieve archived drivers via the API, making it impossible to reactivate them programmatically. The Get Drivers endpoint now supports returning archived drivers, and the archived/active status is included in the response payload. The Swagger documentation has also been updated to reflect the current payload structure.

Tenant API — Order Templates

  • Creating an order template without contact info objects returned a 500 error
    When submitting a POST /api/v1/order-templates request without pickupContactInfo and deliveryContactInfo, the API returned a 500 Internal Server Error instead of a meaningful validation response. The API now returns a 400 Bad Request with a descriptive error message when these required fields are missing. The Swagger documentation has been updated accordingly.

Bug Fixes Included in Version 1.76 After Release

BackOffice — Invoicing

  • Invoice email body did not match the configured delivery method
    Invoice emails always contained messaging that referred to an attached PDF, even when the invoice was sent as a hyperlink. The email body now correctly reflects whether a PDF is attached or a link is provided.
  • Orders created from a template with an overridden price were incorrectly flagged as "Verify before invoicing"
    When an order was created from a template that had a manually overridden delivery price, the system incorrectly set the Verify before invoicing flag on the new order, even though no change had been made relative to the template. The flag is now only set when there is an actual difference between the template and the order created from it.
  • Entering a very long query in the search bar caused exceptions
    The free-text search bar had no character limit, which allowed users to enter queries that exceeded the search engine's maximum field length, causing errors. A 75-character limit has been added to the search bar across all applicable pages.

Dispatch Board

  • New orders were not sorted correctly on the dispatch boards
    After a recent refactor, the frontend sort on the dispatch boards was removed in favour of relying on Azure Search, which sorts by delivery time in descending order. However, the boards only re-sorted newly updated orders rather than the full list, causing incoming orders to appear out of order. The board now correctly sorts all orders in ascending order by delivery time.
  • Locked stops could not be reordered by drag-and-drop on the dispatch board
    Dispatchers were intermittently unable to reorder stops via drag-and-drop. The stop appeared to return to its original position, and refreshing the page resolved the issue. The root cause was a virtualization offset error in the sort predicate and an unintended stop-click event firing after a drag-and-drop action. Both issues have been corrected.
  • Dispatch modal opened with a delay and driver list took several seconds to load
    When opening the Dispatch modal from an order action, users experienced two distinct delays: a forced 150 ms delay before the modal appeared, and a separate delay while the driver list loaded. The first delay has been eliminated by replacing the debounce logic with a more appropriate handler. The second has been reduced by reusing driver data already loaded in the board store when applicable, avoiding a redundant API call in the most common use case.

Tenant API — Attributes

  • Attributes could be created without a visibility scope via the API
    When creating or editing an attribute via the Tenant API, the isAvailableForAccounts, isAvailableForContacts, and isAvailableForOrders properties were not supported on the POST, PUT, and PATCH attribute endpoints. As a result, attributes created through the API were set with all three visibility flags as false, making them invisible in the UI while still being assignable via the API, which caused UI errors. All three properties are now supported on these endpoints, and a validation error is returned if all three are set to false.
  • Creating a driver-type attribute via the API incorrectly required an order visibility flag
    When creating an attribute with attributeType set to Driver (1) via the Tenant API, the system incorrectly returned a validation error requiring one of isAvailableForAccounts, isAvailableForContacts, or isAvailableForOrders to be true — even though these visibility flags do not apply to driver-type attributes. This has been corrected.

Tenant API — Orders

  • Passing duplicate user fields in an order payload caused a 500 error
    When the same user field was included more than once in the user fields array on an order creation or update request via the Tenant API, the system returned a 500 Internal Server Error. The order was created but could not be opened in the UI. The API now returns a clear validation error when duplicate user fields are detected.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article