github frappe/erpnext v16.30.0

latest release: v15.118.2
3 hours ago

Features

  • Makes the Cost Center on Shipping Rule optional. When it is left blank, shipping charges use the company’s default Cost Center and copy the rule’s Project to the shipping charge line. (#57385)
  • Adds an optional Overdue Limit check and blocks Sales Invoice submission when a customer's overdue balance is above it. Users allowed to bypass the restriction can still submit, and the limit can also come from Customer Group. (#57438)
  • Adds accounting entries for stock-related expenses in Stock Entry, Stock Reconciliation, and Purchase Receipt, so these costs are recorded separately. Excludes landed cost from purchase expense entries. (#57503)

Bug Fixes

  • Reserved batch checks now use the quantity precision from Serial and Batch Entry, with System Settings as a fallback, instead of always using 6 decimal places. (#57354)
  • When creating a Work Order for a variant item, ERPNext keeps the selected BOM instead of replacing it with the default one. (#57359)
  • When several stock entries share the same date and time, cancelling one now updates the entries that were created after it, so stock levels stay correct after the cancellation. (#57397)
  • Updates the "Stock Ageing" report for items with batch numbers, spreading a batch’s value across its rows when one row shows a negative value. This makes the row values add up to the batch’s total value in those cases. (#57404)
  • Updates Address to handle a missing is_your_company_address field. Saving or importing Address records no longer stops with an error in that case. (#57408)
  • Fixes cleanup for Repost Item Valuation so its attached data file is removed and the Reposting Data File field is cleared. (#57250)
  • The Batch selection now puts batches without an Expiry Date at the end of the list. This avoids an error when a Warehouse contains both expiring and non-expiring batches. (#57415)
  • Copies the Customer from Pick List to Delivery Note when creating a delivery note without a Sales Order. (#57420)
  • The dashboard on Customer and Supplier forms now shows summary information only for companies the current user can access. This avoids permission errors when a customer or supplier has activity in companies the user cannot access. (#57440)
  • The "Stock Balance" report turns on Include Zero Stock Items by default, so items with no stock appear when the report opens. (#57460)
  • When you change Hour Rate in Routing, Operating Cost updates for that operation. (#57468)
  • In "Accounts Receivable", "Accounts Payable", and their summary reports, Posting Date is renamed to Report Date, and Calculate Ageing With is renamed to Age as on with "Today Date" shortened to "Today" so the labels match how the reports work. Existing saved filters are updated automatically to match the new labels. (#57473)
  • The "Stock Ageing" report now distributes the value of a Batch across its age groups on every run, instead of only after one age group goes below zero. This changes the amounts shown in each age group when a batch includes receipts at different prices, while the total stays the same. (#57487)
  • A closed Subcontracting Order now releases any remaining raw-material reservation tied to it. The warehouse stock count reflects the freed material instead of keeping it reserved under the closed order. (#57481)
  • Treats cancelled and expired Quotations as inactive when setting the status of an Opportunity. Partially ordered Quotations now count as ordered, so an Opportunity can move to Converted. (#57491)
  • Clarifies the message shown when you try to mark an Opportunity as lost if an active Quotation exists. (#57498)
  • Limits the search through older stock records to the same item when valuing serial numbers, reducing the number of records checked. (#57506)
  • When you submit a Quotation linked to an Opportunity, the comments and communications from the linked Opportunity are carried over to the Quotation if the option in CRM Settings is enabled. (#57509)
  • Updates the Operating Cost for operations in Routing when a Workstation Hour Rate changes. (#57504)
  • Moves the Title field for Subcontracting Order and Subcontracting Inward Order into the Other Info tab and stops filling it with placeholder text on new records. Older records that still contain the placeholder are updated to show the related supplier or customer name instead. (#57517)
  • Trend reports now show the company’s currency in the chart and total row instead of the global default currency. The chart no longer counts the total row twice. (#57523)
  • The BOM Creator now keeps repeated sub-assemblies separate, so each copy shows only its own raw materials. Deleting one copy no longer affects the others. (#57530)
  • For Work Orders that track semi-finished goods, the completed quantity now adds up across all submitted Job Cards for the same operation instead of using only the most recent one. Corrective Job Cards do not count toward this total, and the Work Order is marked completed when the full quantity is done. (#57529)
  • Skips stock expense entries for items that are not kept in stock in Purchase Invoice, Purchase Receipt, Stock Entry, and Stock Reconciliation. This prevents empty accounting lines for those items. (#57518)
  • Allows BOMs created using BOM Creator to have their cost updated. (#57536)
  • Filters the Default WIP Warehouse, Default Finished Goods Warehouse, and Default Scrap Warehouse fields on the Company form so they only list warehouses for this company. Warehouse groups no longer appear in these lists. (#57542)
  • MT940 bank statement imports now use the reference from each transaction in the Reference Number column when available, instead of repeating the same reference for every transaction. The Description column also shows the transaction details when available. (#57429)
  • Adds a permission check to get_item_details, so only users with access can view item details. (#57551)
  • Production Plan now uses unit conversion rates from the item, its variant template, or UOM Conversion Factor when it lists raw materials for purchase. If no conversion rate is set anywhere, it still shows the missing setup message. (#57554)
  • You can now cancel a POS Closing Entry if its Status is Failed. (#57572)
  • Updates the help text in the Item form so Enable Deferred Revenue and Enable Deferred Expense show the correct descriptions. The income and expense guidance now appears under the matching checkbox. (#57568)

Authors: @Pandiyan5273, @krishna-254, @kaulith, @diptanilsaha, @Sudharsanan11, @rohitwaghchaure, @Jatin3128, @khushi8112, @mihir-kandoi, @Shllokkk, @barredterra
Reviewers: @rohitwaghchaure, @diptanilsaha, @mihir-kandoi, @Shllokkk, @barredterra

AI content

For these release notes, we used an LLM (OpenAI gpt-5.4-mini) to review and summarise the code changes, along with the associated issue and PR descriptions. It may contain typical errors and inaccuracies. You can read the prompt here.

Changes with the following labels were excluded:

  • skip-release-notes

Changes with the following types were excluded:

  • refactor
  • docs
  • test
  • chore
  • ci
  • style
  • build

Don't miss a new erpnext release

NewReleases is sending notifications on new releases.