July Release

Multi-Select Support for Custom Fields

Overview

This release introduces multi-select dropdown support for custom fields in both the Header and Detail sections across applicable modules. Users can now assign multiple values to a single custom field, enabling more flexible and comprehensive data capture.

What’s New

Area
Description

Detail Custom Fields

Multi-select dropdowns are now supported. Users can select multiple values per line item.

Header Custom Fields

Multi-select functionality has been enabled. Users can apply multiple values at the document level.

Applicable Modules

Estimate, Estimate Centre, Sales Order, Sales Order Centre, Purchase Order, Purchase Order Centre, Invoice, Invoice Centre, Item Receipt, Item Receipt Centre, Bill, Bill Centre, Sales Receipt, Sales Receipt Centre, Credit Memo, Credit Memo Centre, Bill of Material, Bill of Material Centre, Manufacturing Order, Manufacturing Order Centre, RMA, RMA Centre

Field Sorting in Bank Reconciliation Centre

Overview

To improve usability and data navigation within the Bank Reconciliation Centre, we have introduced field-level sorting capabilities. This enhancement enables users to sort data columns directly within the interface, allowing for faster reconciliation and improved control over large data sets.


Enhancement Details

  • All key fields in the Bank Reconciliation Centre are now sortable, allowing users to arrange entries in ascending or descending order based on their preferences.

  • Sorting functionality has been added to fields such as:

    • Transaction Date

    • Document Type

    • Document Number

    • Amount

    • Reconciled Status

    • Bank Reference

    • Cleared Date

    • (Include other fields here as applicable)

Brand Field Added to Batch Inventory Movement

We have introduced a new enhancement in the Batch Inventory Movement module to improve searchability and categorization of inventory records.

What’s New:

  • A "Brand" field has been added to the Batch Inventory Movement columns, enabling users to directly view the brand associated with each batch entry.

  • The "Brand" field has also been integrated into the Advanced Search functionality, allowing users to filter batch inventory movement data based on specific brands.

Auto-Assign Default Item Location for PO Receiving and MO Operations

New App Config Introduced

A new application configuration named: “Auto-Select Default Item Location for PO Receiving and MO Production/Disassembly” has been added to the system settings.

  • Type: Multi-select dropdown

  • Available Options:

    • Receive PO

    • Produce/Disassemble MO

This configuration provides users with greater automation and efficiency during inventory movements.


Functionality Overview

When this configuration is enabled:

  • The system will automatically assign the item’s default location:

    • During PO receiving, through Quick Receive or ASN.

    • During MO production and disassembly processes.

  • Users will no longer be required to manually select the item location; items will be directly received, produced, or disassembled into their default locations.


Validation Logic

To ensure data accuracy and consistency, the system performs the following validations:

  • An error will be triggered if:

    • The item’s default store or default location is not defined, or

    • The default store does not match the store selected in the PO or MO.

This validation prevents incorrect inventory placement and maintains inventory integrity across the system.

"Post Selected Lines as New Bill" – Item Receipt Module Enhancement

Overview

A new feature, “Post Selected Lines as New Bill”, has been introduced in the Item Receipt module. This enhancement provides users with greater flexibility and control by allowing them to selectively post specific item receipt lines to a new bill, instead of converting the entire receipt at once.

This enhancement allows users to select specific item receipt lines for posting as separate bills, while maintaining full auditability, status tracking, and financial integrity. This is particularly helpful in scenarios involving partial receipt billing, complex vendor invoicing, or staggered item reconciliation workflows.

Feature Details

1. Access & Usage

  • The “Post Selected Lines as New Bill” option is now available under the Options dropdown in the Item Receipt module's Header section.

  • Users can select individual item receipt lines and post them to a new vendor bill.


2. Line-Level Enhancements

Each item line now includes two new fields:

  • Posted: Indicates whether the line has already been posted to a bill (True/False).

  • Posted Bill#: A hyperlink field referencing the bill number the line has been posted to, allowing direct navigation to the corresponding bill.

When a line is successfully posted:

  • The Posted flag is marked as True.

  • The Posted Bill# is populated with a clickable link.

  • The Item Receipt (IR) status becomes Partially Posted.

Once all lines are posted:

  • The IR status changes to Posted.

These fields are visible on both the Item Receipt Centre and Create/Edit page views.


3. Validation & Data Integrity

Robust validations have been added to ensure consistency and prevent unintended changes:

  • Line Locking:

    • Posted lines cannot be edited (fields like Qty, Unit Cost, UOM, and Tax are locked).

    • Other non-impacting fields like Description or Memo remain editable.

  • Deletion Restrictions:

    • Posted lines cannot be deleted unless the associated bill is voided.

  • Duplicate Posting Prevention:

    • System checks ensure that a posted line cannot be reposted.

  • Accounting Accuracy:

    • The posting process respects GL and AP balances to maintain financial integrity.


4. Partial Posting Scenarios

  • Partially Posted IR:

    • When only some lines are posted, the IR remains editable for unposted lines.

    • New lines can be added.

    • Posted lines remain read-only for protected fields.

  • Full Posting:

    • Once all lines are posted, the entire IR status is set to Posted and becomes non-editable for any transactional changes.


5. Voiding Posted Bills

  • If a posted bill is voided, the corresponding item receipt lines automatically:

    • Revert the Posted status to False.

    • Clear the Posted Bill# field.

    • The IR status is updated based on the remaining posted/unposted lines.

This ensures users can reprocess or repost such lines as needed without data inconsistencies.

Vendor Configuration and Suspense Account Integration for IR Generation and Bill Posting

Overview

Building upon the recent release that introduced the “Post Selected Lines as New Bill” feature in the Item Receipt module, which enabled users to selectively convert receipt lines into vendor bills with enhanced control, this release introduces a foundational configuration enhancement that supports greater accounting flexibility and improved reconciliation accuracy.

This update enables users to configure a vendor-specific default Suspense Account for Item Receipt (IR) transactions and introduces a controlled bill posting workflow post-IR generation. These enhancements support real-world accounting practices where vendor liabilities are managed through suspense accounts before being formally recognized as payables.

Key Feature Details

  1. Vendor Configuration

    • A new dropdown field, Default AP Suspense Account, has been added under the Payments tab in the Vendor module.

    • A toggle, "Use as default for IR?", is also introduced.

    • When enabled, the system will use the specified Suspense Account for generating Item Receipts instead of the default Accounts Payable (AP) account.

    • Both the dropdown and toggle are visible on the Vendor UI and supported during bulk upload via vendor import.

  2. Account Setup

    • To support this configuration, users are required to create a Suspense Account with Account Type: Accounts Payable under Account Setup.

  3. Item Receipt (IR) Generation Flow

    • Upon closing an ASN for a vendor with this configuration enabled, the IR will be automatically generated using the assigned Suspense Account.

    • This ensures vendor-specific liabilities are held temporarily in suspense, allowing for staged bill recognition.

  4. Bill Posting Workflow

    • Following IR creation, a new action button “Post as Bill” appears.

    • Clicking this opens a pop-up window to:

      • Select Bill Date (Transaction Date).

      • Choose the target AP Account to transfer the amount to.

      • Enter the Post Amount to be recognized in the bill.

  5. Posting Scenarios

    • Full Posting (Post Amount = IR Amount or more):

      • IR Status: Posted

      • The resulting Bill reflects a regular expense entry.

    • Partial Posting (Post Amount < IR Amount):

      • IR Status: Partially Posted

      • The Bill displays a negative expense line for the unposted portion.

      • The remaining amount can be posted later as a separate bill.

Integration with Prior Enhancements This enhancement complements the previously released Post Selected Lines as New Bill feature by adding accounting-level flexibility through suspense account handling. Together, these features ensure end-to-end traceability, segmented billing, and accurate financial reporting even in staggered receipt and payment workflows.

Decimal Formatter Added for Unit Cost, Price, and Landed Cost Fields

Overview

To improve consistency and clarity in financial data entry, a new number formatting logic has been implemented for Unit Cost, Price, and Landed Cost fields across various modules. This enhancement standardizes the appearance of numerical values during transaction creation.

Applicable Modules:

  • Bill

  • Credit Memo

  • Credit Memo from Invoice

  • Invoice

  • Manufacturing Order (MO)

  • Purchase Order (PO)

  • Sales Receipt

  • Sales Order (SO)

  • Item Receipt

  • Return Merchandise Authorization (RMA)

Enhancement Details

1. Formatter Logic

  • The formatter ensures that a minimum of two decimal places is displayed for relevant numeric fields.

  • Examples:

    • A value entered as 7 will now display as 7.00

    • A value like 7.9999 will remain unchanged, as it already exceeds two decimals

2. Field Coverage

The formatting has been applied to the following fields, as applicable to each module:

  • Unit Cost

  • Price

  • Landed Cost

3. UI Locations

Formatting changes are applied in the following sections of the modules:

  • Create Page > Detail View

  • Subform > Detail View

Linked Orders Tab Added to Credit Memo Modules

Modules Updated:

  • Credit Memo

  • Invoice Credit Memo

  • Subform (related to above modules)

Overview

A new "Linked Orders" tab has been introduced to the Credit Memo and Invoice Credit Memo modules, including their respective subforms. This enhancement provides users with direct visibility into any associated sales or purchase orders, improving traceability and operational clarity.

Enhancement Details

  • A new tab titled “Linked Orders” is now available on:

    • Credit Memo main page

    • Invoice Credit Memo main page

    • Associated Subform views

  • When the Linked Orders tab is clicked:

    • All relevant linked orders will be displayed in a structured, tabular format.

    • This includes references to originating orders connected to the credit transaction.

Validation

  • Ensure that the Linked Orders tab accurately displays all related order references.

  • Validate that tab functionality is consistent across both main pages and subform views.

"Status" Column Added in Item Centre > Inventory > In Picking Sub-Form

Module Affected: Item Centre

Overview

A new "Status" column has been added to the In Picking sub-form accessed from the Item Centre. This enhancement allows users to directly view the current Wave Status (e.g., Allocated, Picking, Closed, etc.) without needing to click into each wave number.

Item Centre → Double Click on Item → Inventory Tab → Under In Picking column → Click on Quantity Value → Sub-form → Status column

Enhancement Details

  • A new Status column is displayed in the sub-form that lists picking records.

  • The status reflects the current progress of the wave related to the selected item line.

Status values include (but are not limited to):

  • Allocated

  • Picking

  • Closed

  • Partial

  • Pending

Addition of “Description” Column in Price Centre Export & Master Data Upload File

To improve data clarity and consistency during price management workflows, we have introduced the “Description” column in two key areas related to Item Price handling:


1. Data Export Centre → Item Search by Dropdown → “Price Centre” Export

  • A new "Description" column has been added to the file exported via the "Price Centre" option under Item Search By in the Data Export Centre.

  • This column reflects the item description as stored in the system master, providing additional context for each item alongside existing data points like Item Code, Price, and Brand.

2. Upload Item Prices Module → Master Data File

  • The "Description" column is now also included in the Master Data file generated for uploading item prices.

  • This helps users in validating data and ensures consistency between exported and uploaded records, minimizing mismatches.

Impact

  • This change affects only the exported Excel/CSV file structure.

  • No changes have been made to the upload logic or Item Price Centre UI.

  • The additional column does not disrupt the upload template’s compatibility, as the import logic continues to rely on required fields only.

Quick Add Item Modal – Item Group Filter and Column Enhancement

Overview

To improve item selection and streamline searchability within transactional modules, a new enhancement has been implemented in the Quick Add Item modal across multiple modules.

Enhancement Details

  • New Filter Added: A filter for Item Group has been introduced in the Quick Add Item modal used in the following modules:

    • Estimate

    • Sales Order

    • Purchase Order

    This filter allows users to quickly narrow down item lists based on the selected Item Group, enabling faster and more relevant item selection.

  • New Column Added: An Item Group column has also been added to the item listing table within the same modal. This ensures better visibility and categorization of items while browsing or selecting them during transaction creation.

Default Store and Default Location in Item Page Defaults

Overview

A new functionality has been introduced in the Item module to improve inventory handling and streamline item setup. Users can now define default values for Store and Location under the Page Defaults section of an item.

Enhancement Details

  • Default Store Field: Allows users to set a predefined store for the item. This store will be auto-populated in transactions involving the item unless overridden manually.

  • Default Location Field: Enables setting a specific storage location within the default store. It ensures consistency in item placement and speeds up transaction processing.

Default Location Column Added to BOM Centre (Detail View)

Overview

To improve visibility and streamline inventory planning during production processes, a new column has been added to the Bill of Materials (BOM) Centre – Detail View. This enhancement allows users to view the Default Location of items listed in each BOM line directly within the interface.

Enhancement Details

  • New Column Introduced: A “Default Location” column is now visible in the BOM Detail view, displaying the pre-defined storage location of each component item listed in the Bill of Materials.

  • Data Source: The default location displayed is pulled from the Item Master → Page Defaults section, where the default storage location is assigned to each item.

  • Applies To: This enhancement applies to all records viewed in the BOM Centre → Detail tab, ensuring consistency and better planning across different manufacturing scenarios.

Deposit Refund – Sales Order & Customer Mapping Support

Overview:

To provide more flexibility in handling deposit refunds across multiple Sales Orders (SOs), we have introduced an enhancement that allows partial deposit refunds even when the deposit has been applied across different SOs.

Key Updates:

  • New App Config Added A configuration toggle named "Enable Sales Order and Customer Refund Mapping" has been introduced. When enabled, the system will allow refunds of the remaining deposit amount even if the deposit has been linked or partially applied to a different Sales Order.

  • Refund Logic Enhancement Previously, once a deposit was applied to any other Sales Order, the system restricted refund generation entirely.

    • With this enhancement, users can now process refunds for the unapplied portion of a deposit, regardless of cross-SO application history.

Enhanced Detail View Options in Customer Portal Orders Module

Overview

To improve transparency and elevate the user experience within the Customer Portal, two new options have been introduced under the "Type" dropdown in the Orders module. These additions allow customers to view detailed line-item information for Sales Orders and Estimates directly from the portal interface.


New Options Added

Option Name
Description

Customer Portal Sales Order Detail

Displays detail-level data for Sales Orders, including individual items, quantities, unit prices, and delivery status.

Customer Portal Estimate Detail

Presents line-item level information for Estimates, enabling users to view quoted items in full detail.


Functionality

  • When a user selects either of the new options from the "Type" dropdown, the portal generates a line-item view corresponding to the selected transaction type.

  • Each row represents a unique line item tied to a Sales Order or Estimate, with columns displaying fields such as Item Name, Quantity, Unit Price, Subtotal, Status, and more.

  • Double-clicking any row opens the same detailed report that is available through the header-level Sales Order or Estimate view.

Availability

This enhancement is now available in the Customer Portal. No configuration is required. Users will see the new "Sales Order Detail" and "Estimate Detail" options in the "Type" dropdown menu.

"Is BOM Item Active" Column Added to BOM Centre

Overview:

A new column titled "Is BOM Item Active" has been added to the BOM Centre screen. This enhancement is aimed at providing better visibility into the status of BOM items, enabling users to identify whether a BOM item is currently active or inactive at a glance.


Key Highlights:

  • New Column Integration: The "Is BOM Item Active" column clearly indicates the active status of each BOM item.

  • Improved Usability: Users can now easily review, filter, and manage BOMs based on the item status without navigating into individual records.

  • Enhanced BOM Management: Assists in maintaining data accuracy and supports better decision-making during production planning and item reviews.

Support for Item Rebate in Last Order Item Functionality

Module(s): Estimate & Sales Order

Overview:

We are pleased to announce an enhancement in the Last Order Item functionality within the Estimate and Sales Order modules of XoroERP. With this update, users can now view and apply Item Rebate information directly when fetching previously ordered items, providing greater pricing consistency, accuracy, and efficiency in order processing.

What's New?

Item Rebate Support in Last Order Item Lookup

  • When using the Last Order Item feature while creating an Estimate or Sales Order, the system now automatically captures and displays the rebate applied to the item in the previous order.

  • Users can choose to replicate the rebate structure as it was in the prior transaction, or modify it as needed.

How to Use:

  1. Navigate to the Estimate or Sales Order module.

  2. Use the Last Order Item lookup to fetch items previously ordered by the selected customer.

  3. The rebate, if any, from the last order will now be displayed alongside the item details.

  4. Users can choose to retain or adjust the rebate amount before finalizing the transaction.

Item Category Column Integration in Estimate Module Search Interfaces

Modules Impacted:

  • Estimate Centre

  • Estimate Subform

  • Estimate Detail

  • Advanced Search (Estimate)

  • Search by Estimate Detail

Overview

To enhance item-level visibility and improve filtering capabilities across estimation workflows, the Item Category column has been added to various search and display areas in the Estimate module of XoroERP. This addition allows users to identify, group, and filter items based on their assigned categories—directly from within the Estimate Centre and associated views.

This is particularly useful in businesses managing large volumes of estimations across diverse product categories, enabling refined search criteria, improved reporting, and faster decision-making.

Enhancement Details

The Item Category field has been added to the following functional areas:

1. Search by Estimate Detail (Estimate Centre)

  • A new column, Item Category, has been included in the Search by Estimate Detail results grid.

  • This allows users to view and filter items within estimates based on their assigned Item Category as defined in the Item Master.

  • The category is visible alongside other line-level details such as Item#, Description, Qty, Unit Price, and more.

2. Advanced Search – Estimate Centre

  • The Advanced Search panel in the Estimate Centre now includes Item Category as a searchable parameter.

  • Users can perform targeted queries to retrieve estimates that include items belonging to specific categories.

  • Supports both exact match and multi-value filtering depending on configuration.

3. Estimate Sub-Form (Estimate Centre)

  • The Item Category column is now visible in the Estimate Subform grid, enhancing in-line review of item classification within each estimate.

  • This view helps users quickly identify product groupings and check estimate composition at a glance.

4. Estimate Detail Level Column Search

  • Column-level search functionality has been extended to include the Item Category column.

  • Users can apply direct column filters to narrow down line items based on category.

  • Improves data handling efficiency in large estimates with diverse item sets.


Enhanced Batch Reconciliation in Item Receipt Centre and Bill Centre

Overview

A new Batch Reconcile option has been introduced in the Item Receipt Centre and Bill Centre modules to support streamlined reconciliation of multiple item receipts and vendor bills, including those associated with different vendors under specific constraints.

Functionality Details

  • Users can now perform batch-level reconciliation for multiple bills and item receipts.

  • Vendor Constraint: In the Item Receipt Centre and Bill Centre, batch reconciliation can be initiated even if the bills originate from different vendors.

  • Store Flexibility: The associated store may differ across the selected transactions, allowing users to reconcile across multiple receiving locations.

  • Currency Constraint: All bills and item receipts included in a batch must have the same order currency for reconciliation to proceed. Mixed-currency batches are not supported to maintain financial consistency.

This enhancement is particularly useful when handling purchase orders involving multiple inventory vendors where a shared shipment cost needs to be allocated and reconciled efficiently. It helps automate what would otherwise be a manual, error-prone process, ensuring accurate financial postings while supporting operational flexibility.

The Link Orders API is used to create, update, or delete links between Sales Orders (SO) and Purchase Orders (PO).

  • To create or update a link, provide the SO/PO line IDs along with a non-zero quantity.

  • To delete a link, simply set the quantity to zero.

For detailed request/response structures and additional parameters, refer to the full API documentation here: 🔗 Link Orders API Documentation


CreateDropshipPO

The CreateDropshipPO API is designed to create dropship purchase orders directly from a Sales Order. This is applicable when items must be shipped directly from a vendor to the customer, bypassing the internal warehouse process.

To use this API, provide the following:

  • Sales Order number

  • Sales Order line ID

  • Vendor ID

  • Quantity

For full technical details including request format and payload structure, please refer to the official documentation: 🔗 CreateDropshipPO API Documentation

Last updated

Was this helpful?