Skip to content
English
  • There are no suggestions because the search field is empty.

Release Notes 2/2/26 - 2/15/26

🚀 Enhancements

Auto Re-Audit When Mapping Unknown Accessorial

  • Enhanced audit automation to trigger a re-audit when a user maps an Unknown Accessorial
  • Previously:
    • Re-audits were triggered for updates like copying Vendor or Remit-To from an Order
    • Mapping an Unknown Accessorial required users to manually click Re-Audit
  • With this update:
    • Mapping an Unknown Accessorial now automatically triggers a re-audit
    • Saves users time and eliminates unnecessary manual steps
  • This is especially important for tenants that enforce an “Unknown Accessorial Exists” exception to prevent issues when sending data back to the TMS

image (58)

TAI: Prepare for Cutover

  • Added tooling and safeguards to support a smooth TAI integration cutover
  • Implemented an endpoint to manually re-ingest Orders that were not yet approved immediately following cutover
  • Created a supporting query to help identify affected Orders quickly
  • Enables rapid recovery and validation during post-cutover reconciliation

Toggle Visibility of Disabled Rules on Legacy Rules Page

  • Added a toggle control at the top of the legacy Business Rules page to show or hide disabled rules
  • By default:
    • Disabled rules are hidden to reduce clutter and improve usability
  • Users can toggle visibility on to view disabled rules when needed
  • This change only affects list visibility and does not impact rule execution

image (55)

Revenova: Ingest Order Customer Currency

  • Enhanced the Revenova integration to properly map Customer Currency during Order ingestion
  • Customer Currency from Revenova loads is now correctly stored on the Order
  • Ensures accurate financial data and downstream processing

Revenova: Set Accessorial Charges Currency Code in ADO Process

  • Enhanced the Revenova integration to ensure Accessorial Charges include a Currency Code during the Audit & Docs Out (ADO) process
  • Currency Code is now properly set for all Accessorial Charges in the outbound ADO payload
  • Improves financial data accuracy and prevents downstream integration issues

Payment Status Display in Invoice UI

  • Added a Payment Status section to the Invoice Details page
  • Positioned above Line Items for immediate visibility
  • Only displayed for Approved Invoices
  • Fields are read-only and populated via integrations

*Snapshot below of an approved Invoice that is currently Unpaid

image (56)

Prioritize Rate Confirmation in Order Number Matching

  • Updated Order Number matching logic to prioritize Rate Confirmations over other document types

Previous priority order:

  • Invoice
  • Rate Confirmation
  • BOL
  • OCR Rate Confirmation
  • OCR Invoice
  • OCR BOL

New priority order:

  • Rate Confirmation
  • Invoice
  • BOL
  • OCR Rate Confirmation
  • OCR Invoice
  • OCR BOL
  • Improves Order matching accuracy and reduces mismatches when multiple document types are present

🐞 Optimizations

Filter Group Fixes

  • Fixed multiple UX and state-management issues with Saved Filter Groups:
    • Long filter names previously obscured the three-dot menu, preventing edit/delete actions
    • “Move Up” and “Move Down” actions failed to persist ordering changes
  • Additional fixes addressed filter state inconsistencies across queues:
    • Observed while testing Audit and RTB queues
    • Filters initially applied correctly, but became mixed after applying/removing combinations
    • This caused confusing grid behavior and unreliable filtering
  • Filter application logic has been corrected to:
    • Maintain consistent state when switching or clearing filters
    • Prevent cross-contamination between saved filters and queues

TAI: Duplicate Invoice Charges Not Summed Correctly

  • Fixed an issue where invoices containing multiple charges with the same charge code were not aggregated correctly
  • Only the first charge was being sent to TAI, causing underreported totals

Impact:

  • Incorrect AP, AR, and bill approval amounts were sent to TAI

Fix:

  • Charges are now grouped by charge code and summed before transmission

TAI Integration: Bill Amount Mismatch Due to Charge Code Differences

  • Fixed a mismatch where valid invoice charges were excluded from TAI bill amounts
  • Occurred when:
    • Invoice VendorCharge codes differed from shipment AccessorialCodes (e.g. DTUD vs DTL)

Impact:

  • Charges were omitted, leading to incorrect bill approvals

Fix:

  • Logic updated to correctly include valid invoice charges even when identifiers differ

Customer Billing: Duplicate Orders Appearing in Pre-Billing

  • Fixed an issue where duplicate Orders appeared in Customer Billing:
    • One Order remained in Draft even after approval
  • This caused confusion when approved Orders still appeared in Pre-Billing

Fix:

  • Order lifecycle handling corrected to prevent duplicate Draft records post-approval

Dispute Email: Long TLD Validation Issue

  • Fixed an issue where valid email addresses were cleared during Dispute creation
  • Root cause was overly strict email validation that rejected long TLDs (e.g. .money)

Fix:

  • Email validation updated to support modern TLDs

Public API Docs: Document Type Enum Values Displayed Incorrectly

  • Fixed an issue in public API docs where Document Type enums appeared as numeric values
  • Corrected to display string-based enum values for clarity and correctness

Loosen Validation on Composite Vendor Invoice Line Items

  • Fixed invoice ingestion failures caused by invalid line item data from IDP/OCR parsing
  • Negative or malformed values (e.g. pieces < 0) caused invoice creation to fail entirely

Impact:

  • Invoices landed in Unmatched Documents instead of being ingested

Fix:

  • Line item validation is now non-blocking:
    • Invalid values are nulled or normalized
    • Invoice ingestion always succeeds

Charge Grid: Unknown Accessorials Not Clearing

  • Fixed an issue where the “Unknown Accessorial(s)” header remained visible after mapping
  • This prevented related exceptions from resolving

Fix:

  • Header now clears correctly once all unknown accessorials are mapped

Charge Grid Rate Calculation Bug

  • Fixed a Charge Grid issue where saving Vendor Adjusted Rates caused duplicate Base Rate rows
  • Resulted in inflated invoice totals

Fix:

  • Charge persistence logic corrected to prevent duplication and ensure consistent totals

Create Invoice Validation

  • Fixed a validation mismatch between Edge and Core for Create Invoice API
  • Edge accepted invalid dates (e.g. 0001-01-01) that Core rejected silently

Impact:

  • API consumers received a 202 but invoices failed ingestion

Fix:

  • Edge validation and documentation now enforce SQL DateTime limits

MG Integration: Invalid Reference Number Causing Order Creation Failures

  • Invalid reference number values caused order creation to fail
  • Fix: Skip mapping invalid reference numbers so order creation proceeds successfully

MG Integration: Missing Currency Code in ADO Process

  • Missing Currency Code in Audit & Docs results caused outbound MG errors
  • Fix: Default Currency Code to USD when not present

Customer Billing: “Return to List” Did Not Respect Active Tab

  • “Return to List” always redirected to Pre-Billing regardless of original tab
  • Fix: Navigation now returns users to their previously selected tab

INVOICE_CREATED Webhook Not Triggered for Manually Created Invoices

  • Invoices created via UI did not trigger INVOICE_CREATED webhook
  • Fix: Webhook now fires consistently for manually created invoices

No Navix Submission Found for Ingestion Submission

  • Identified an ingestion failure where documents triggered the error:
    • "No Navix Submission for this Ingestion Submission ID XXXXXXX"

Root Cause:

  • During IDP Entry Point processing:
    • A Navix Submission entity is created
    • This requires retrieving a token from the Core API
  • If an exception occurred while retrieving the token:
    • The Navix Submission was not created
    • However, the rest of the entry point logic continued
    • The submission was still sent to IDP
  • When IDP later returned the submission during Document Ingestion:
    • The system attempted to locate the Navix Submission
    • The entity did not exist
    • Ingestion failed and the message was sent to the DLQ

Fix Implemented:

  • Improved error handling to ensure:
    • Submissions are not sent to Ingestion unless the Navix Submission entity is successfully created
    • Proper safeguards prevent orphaned IDP submissions
  • Prevents ingestion failures and DLQ routing due to missing submission records

📊 Reports

Customer Billing Timeline Dashboard

  • Introduced a new Order-centric dashboard for Customer Billing performance

Metrics included:

  • Count of Orders Approved
  • % of Orders Approved
  • Created → Approved (Days)
  • Delivered → Approved (Days) (default)

image (57)

Efficiency Extract: Added Source Column

  • Added a new “Source” column to the Efficiency Extract report within the main Dashboard
  • The Source field is now included for each individual record displayed in the extract
  • Provides additional visibility into how records were ingested or created