Features
- Adds a new setup step that asks a few questions about your business and preselects modules based on the kind of work you do. (#56707)
- The Service Level Agreement field now only shows agreements for the current document type. Existing Service Level Agreement fields also use the same filter after an update. (#56956)
- Adds a way to create a Material Request from a Work Order for raw materials. (#56980)
- A Pick List can now be transferred in parts, so you can create more than one Stock Entry from it as stock is moved in stages. It shows a Partially Transferred status until the full quantity is moved, and existing Pick List records that already have transferred stock stay completed. (#56915)
- Adds a note on Additional Discount Amount in Sales Order that explains fixed discounts are applied to linked Delivery Note and Sales Invoice documents in creation order, rather than split evenly across them. It also points users to Additional Discount Percentage when they want the discount spread across item prices. (#56436)
Bug Fixes
- Updates the linked Sales Order when a credit note is submitted from a return Delivery Note, so returned items are no longer counted in the billed amount. (#56671)
- Fixes Stock Entry by adding the option to link a Quality Inspection when a specific Purpose is selected. (#56672)
- Displays translated banking text with its formatting intact. Uses a custom formula parser when checking banking rules. (#56647)
- Bank statement imports now ignore plus or minus signs on amounts in credit/debit columns. PDF bank statements marked as protected also try an empty password first if no password is entered, so some files open instead of showing a password error. (#56694)
- Clears existing values when you mark an Item Attribute as numeric, so it saves with the numeric setting applied.
The "Create Multiple Variants" dialog now uses a compact list for numeric ranges instead of showing every value, and it rejects values outside the allowed range before creating variants. (#56742)
- When Immutable Ledger is enabled, reverse entries now use the reversal date, or today's date if none is entered, instead of the original voucher date, for checks against closed accounting periods. This can prevent a books-closed error when canceling backdated vouchers in an open period. (#56752)
- Adds a check in the "Stock Balance" report when Show Stock Ageing Data is enabled so a batch entry at the top of the stock list is not mistaken for a normal stock quantity. This prevents the report from crashing when some stock entries have batch details and others do not. (#56764)
- Recalculates transferred quantities before updating Work Order status, so each order can leave 'Not Started' once the latest material transfers are recorded. (#56753)
- Amending a reconciled Payment Entry, Journal Entry, Purchase Invoice, or Sales Invoice clears the Clearance Date on the amended copy, so the previous date does not carry over. (#55970)
- Locks fields and line items in Journal Entry reversal drafts as read-only while keeping the "Save" and "Submit" buttons available. (#56772)
- Prevents changing a serialized Item to non-serialized when a Serial and Batch Bundle still exists. The bundle must be deleted or cancelled first before the change can be saved. (#56775)
- Uses the customer’s default currency when creating a Quotation from Customer, so the exchange rate is filled in on the quote. (#56712)
- When editing a Company, you can now select Account and Cost Center values even if you do not normally have access to them. (#56795)
- Adds a check during upgrades that skips Onboarding Step entries linked to missing document types, so the update can continue. (#56805)
- Prevents Delivery Note and Sales Invoice from creating serial and batch entries for items that are not set up for serial or batch tracking. This avoids save errors on those documents. (#56803)
- Several standard and item-image print layouts now show the footer from the letterhead in PDFs. Page numbers also appear in that footer. (#56813)
- The "Show Incorrect Entries" filter in the stock ledger report now lists the matching rows again. The report also stops marking some serial and batch entries as wrong when no queue details are available, and it uses the correct rounding when comparing stock values and quantities. (#56839)
- Updates Purchase Receipt so it reserves stock only for Production Plan records with Reserve Stock enabled. Plans without that option stay out of stock reservation when you receive goods. (#56825)
- For internal transfers within the same company, Purchase Receipt and Purchase Invoice use the value from the source warehouse on the receiving side. This avoids extra cost differences when the receipt value differs from the source value. (#56677)
- For semi-finished goods, Work Order now carries over the serial numbers or batches from one operation to the next. Job Card transfers and manufacturing entries fill them in automatically. (#56861)
- Stock Entry rows now use the Cost Center from Item Group or Brand defaults when they are set instead of always using the company default. (#56863)
- The Item form now hides price and stock information for users without access to Item Price, Warehouse, or Bin, instead of showing permission error pop-ups when the form opens. (#56870)
- Fixes an issue where Process Period Closing Voucher can stay stuck in Running when another closing process starts before the first one finishes. It also finds related records faster, which reduces errors while closing periods. (#56876)
- Updates Payment Reconciliation to allow small rounding differences when matching amounts. This avoids an error when totals differ by only a tiny decimal amount. (#56938)
- Adds permission checks in the Payment Entry form for customer or supplier details and linked Account and Bank Account records. Users now see only records they can access. (#56946)
- Adds a check in Pricing Rule that blocks saving a rule with both an item template and one of its variants. This avoids duplicate matches that can later show a false "Multiple Price Rules exist" message. (#56940)
- Moves the Company custom field creation to a later step during updates, after the rest of the setup completes. (#56965)
- When Frappe CRM is installed on the same site, CRM Settings show Allowed Users only for remote connections and clear any saved entries automatically. Customer creation on the same site now uses the usual site permissions, and Enable Frappe CRM Data Synchronization turns off when the app is removed. (#56969)
- Changing the Routing on a BOM refreshes the Operations table with the selected routing’s operations instead of keeping the previous list. The updated operations stay in place after you save. (#56998)
- Updates the Work Order status to In Process when only some of the required items are transferred from a Pick List. (#56836)
- Adds a validation in Work Order that blocks saving when Planned End Date is earlier than Planned Start Date. (#56996)
- When an abbreviation changes in Item Attribute, item variants that use that abbreviation are renamed to match the new Item Code. Their Item Name is updated too, even if the name was changed manually. (#56988)
- When stock quantities are recalculated for serial and batch bundles, the system uses the quantity from the original stock transaction instead of the bundle’s recalculated total. This helps prevent later edits to bundle lines from changing the recorded quantity for that transaction. (#56835)
- When Posting Date or Posting Time is missing, Serial and Batch Bundle uses the current date and time instead. It also accepts the usual form details when serial and batch records are saved, instead of running into an error. (#57015)
- The "Stock and Account Value Comparison" report now reposts purchase entries from the original purchase record instead of by item and warehouse. This lets the report update the affected purchase record directly when its stock and accounting values differ. (#56608)
- Skips Pick List items that are already fully delivered when creating a Delivery Note, so they do not appear again as empty lines. (#57006)
- Trend reports now display translated headings for the columns used to group the data, so the report labels match your chosen language instead of staying in English. (#57028)
- Updates Opening Invoice Creation Tool Item so Outstanding Amount uses the selected company’s default currency instead of the global default currency. This shows the matching currency symbol when you work with more than one company. (#57009)
- When you create a Payment Entry from a Payment Request, the payment references section shows the invoice total and remaining balance instead of the payment request amount. (#57042)
- The Payment Reconciliation form now respects your permissions on accounting dimensions and only shows the values you can use. (#56560)
- Uses the quantity in stock when calculating prices that depend on quantity for items entered in a different unit of measure. This helps prevent the price from changing after the item is saved. (#57052)
- The "Sales Person-wise Transaction Summary" report now keeps the Document Type filter separate from the other filters and applies the Sales Person, Item Group, and Brand filters only when they are selected. This avoids errors from filters that do not apply to the selected Document Type and skips loading every item when no item filter is selected. (#56908)
- Rows with values in the segment columns are no longer treated as blank in the columnar "Balance Sheet" and "Profit and Loss" reports. (#57053)
- Allows Bank Statement Import Log to accept negative Closing Balance values, so bank statements with a balance below zero can be imported. (#57054)
- Sorts open tasks and events in the Activities section by date, so earlier items appear first. (#57056)
- The Philippines Chart of Accounts template no longer marks Customer Deposits as a payable account. New companies created from this template now use Accounts Payable - Trade for supplier bills. (#57061)
- Keeps the rows you entered in Opening Invoice Creation Tool when one invoice cannot be created, so you can correct the error and try again. Shows the success message only when there are no errors. (#57058)
- Requires permission to view a document before showing its accounting and stock ledger previews. (#57039)
- Adds Job Card handling when a Stock Entry is created from a Pick List linked to a Job Card, filling in WIP Warehouse and Project, linking the Stock Entry to the related Job Card, and marking it as
Material Transfer for Manufacture. It also marks Stock Entry records created from Work Order Pick Lists asMaterial Transfer for Manufacture. (#57044) - Makes the Represents Company field in Purchase Invoice read-only and keeps it out of access checks, so invoices are not hidden by that field when company-based permissions are in use. (#57075)
Performance Improvements
- Looks up stock quantities for Delivery Note items and packed items in bulk instead of checking them one by one. Saving delivery notes with many items can take less time. (#56994)
- The automatic reorder process now looks up the warehouse structure once instead of loading each Warehouse record repeatedly. This reduces the time needed to check stock in warehouses with many levels. (#57024)
Other Changes
- Limits the Item Variant Of filter to items that can have variants, so regular items and item variants no longer appear in the list. (#57000)
Authors: @Sudharsanan11, @ruthra-kumar, @harisansari008, @rohitwaghchaure, @mihir-kandoi, @akhtarmohsin, @Jatin3128, @nabinhait, @diptanilsaha, @khushi8112, @nikkothari22, @Shllokkk, @barredterra, @ervishnucs, @raghavisruia, @umairsy, @Pandiyan5273, @rtdany10, @Nihantra-Patel
Reviewers: @IMS94, @github-code-quality[bot], @mihir-kandoi, @Abdeali099, @nikkothari22, @barredterra, @shahzeelahmed, @ruthra-kumar, @Jatin3128, @nabinhait, @diptanilsaha, @rohitwaghchaure
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:
- chore
- build
- style
- refactor
- docs
- test
- ci