From fba33b7e7ae1101bd53f09ef664ce692560bd1f3 Mon Sep 17 00:00:00 2001 From: Nishka Gosalia <58264710+nishkagosalia@users.noreply.github.com> Date: Sat, 25 Apr 2026 15:27:32 +0530 Subject: [PATCH] refactor(UX): selling settings form (#54412) refactor(UX): Selling settings form cleanup --- .../selling_settings/selling_settings.json | 156 ++++++++++++------ 1 file changed, 106 insertions(+), 50 deletions(-) diff --git a/erpnext/selling/doctype/selling_settings/selling_settings.json b/erpnext/selling/doctype/selling_settings/selling_settings.json index d501f8abd51..bd5cea337a1 100644 --- a/erpnext/selling/doctype/selling_settings/selling_settings.json +++ b/erpnext/selling/doctype/selling_settings/selling_settings.json @@ -6,6 +6,7 @@ "document_type": "Other", "engine": "InnoDB", "field_order": [ + "customer_defaults_tab", "customer_defaults_section", "cust_master_name", "customer_group", @@ -14,12 +15,14 @@ "item_price_tab", "item_price_settings_section", "selling_price_list", - "maintain_same_rate_action", - "role_to_override_stop_action", - "column_break_15", - "maintain_same_sales_rate", "fallback_to_default_price_list", "editable_price_list_rate", + "section_break_lpfl", + "maintain_same_sales_rate", + "column_break_hkqv", + "maintain_same_rate_action", + "role_to_override_stop_action", + "section_break_htyx", "validate_selling_price", "editable_bundle_item_rates", "allow_negative_rates_for_items", @@ -28,20 +31,25 @@ "so_required", "dn_required", "sales_update_frequency", - "blanket_order_allowance", - "enable_tracking_sales_commissions", "column_break_5", "allow_multiple_items", "allow_against_multiple_purchase_orders", + "hide_tax_id", + "section_break_jcmi", "allow_sales_order_creation_for_expired_quotation", "dont_reserve_sales_order_qty_on_sales_return", - "hide_tax_id", - "enable_discount_accounting", "enable_cutoff_date_on_bulk_delivery_note_creation", - "allow_zero_qty_in_quotation", - "allow_zero_qty_in_sales_order", "set_zero_rate_for_expired_batch", + "section_break_zero_qty", + "allow_zero_qty_in_quotation", + "column_break_zwvf", + "allow_zero_qty_in_sales_order", + "blanket_orders_section", + "blanket_order_allowance", + "advanced_features_tab", "section_break_avhb", + "enable_tracking_sales_commissions", + "enable_discount_accounting", "enable_utm", "experimental_section", "use_legacy_js_reactivity", @@ -61,6 +69,7 @@ "options": "Customer Name\nNaming Series\nAuto Name" }, { + "documentation_url": "https://docs.frappe.io/erpnext/selling-settings#2-default-customer-group", "fieldname": "customer_group", "fieldtype": "Link", "in_list_view": 1, @@ -69,6 +78,7 @@ "options": "Customer Group" }, { + "documentation_url": "https://docs.frappe.io/erpnext/selling-settings#3-default-territory", "fieldname": "territory", "fieldtype": "Link", "in_list_view": 1, @@ -80,6 +90,7 @@ "fieldtype": "Link", "in_list_view": 1, "label": "Default Price List", + "link_filters": "[[\"Price List\", \"selling\", \"=\", 1]]", "options": "Price List" }, { @@ -89,66 +100,72 @@ { "fieldname": "so_required", "fieldtype": "Select", - "label": "Is Sales Order Required for Sales Invoice & Delivery Note Creation?", + "label": "Is Sales Order required to create Sales Invoice/Delivery Note?", "options": "No\nYes" }, { "fieldname": "dn_required", "fieldtype": "Select", - "label": "Is Delivery Note Required for Sales Invoice Creation?", + "label": "Is Delivery Note required to create Sales Invoice?", "options": "No\nYes" }, { "default": "Daily", - "description": "How often should Project and Company be updated based on Sales Transactions?", + "description": "The frequency at which project progress and company transaction details will be updated. Set it to daily or monthly if you post a lot of transactions.", "fieldname": "sales_update_frequency", "fieldtype": "Select", - "label": "Sales Update Frequency in Company and Project", + "label": "How often should sales data be updated in Company/Project?", "options": "Monthly\nEach Transaction\nDaily", "reqd": 1 }, { + "bold": 1, "default": "0", + "description": "Warn or stop if Item rate is changed in Delivery Notes and Sales Invoices generated from a Sales Order.", "fieldname": "maintain_same_sales_rate", "fieldtype": "Check", - "label": "Maintain Same Rate Throughout Sales Cycle" + "label": "Maintain same rate throughout sales cycle" }, { + "bold": 1, "default": "0", "fieldname": "editable_price_list_rate", "fieldtype": "Check", - "label": "Allow User to Edit Price List Rate in Transactions" + "label": "Allow editing Price List rate in transactions" }, { "default": "0", "fieldname": "allow_multiple_items", "fieldtype": "Check", - "label": "Allow Item to be Added Multiple Times in a Transaction" + "label": "Allow same Item to be added multiple times in a transaction" }, { "default": "0", "fieldname": "allow_against_multiple_purchase_orders", "fieldtype": "Check", - "label": "Allow Multiple Sales Orders Against a Customer's Purchase Order" + "label": "Allow multiple Sales Orders against a customer's Purchase Order" }, { "default": "0", + "description": "Enable this to block transactions where the selling price is less than the purchase or valuation rate", "fieldname": "validate_selling_price", "fieldtype": "Check", - "label": "Validate Selling Price for Item Against Purchase Rate or Valuation Rate" + "label": "Validate selling price for Item against purchase or valuation rate" }, { "default": "0", + "description": "Most Customers have a unique Tax ID that is fetched into selling transactions. Enable this setting if you do not want Customer Tax IDs to appear in sales transactions.", "fieldname": "hide_tax_id", "fieldtype": "Check", - "label": "Hide Customer's Tax ID from Sales Transactions" + "label": "Hide Customer's Tax ID from sales transactions", + "show_description_on_click": 1 }, { "default": "Stop", "depends_on": "maintain_same_sales_rate", "fieldname": "maintain_same_rate_action", "fieldtype": "Select", - "label": "Action if Same Rate is Not Maintained Throughout Sales Cycle", + "label": "Action if same rate is not maintained throughout sales cycle", "mandatory_depends_on": "maintain_same_sales_rate", "options": "Stop\nWarn" }, @@ -156,13 +173,12 @@ "depends_on": "eval: doc.maintain_same_sales_rate && doc.maintain_same_rate_action == 'Stop'", "fieldname": "role_to_override_stop_action", "fieldtype": "Link", - "label": "Role Allowed to Override Stop Action", + "label": "Role allowed to override stop action", "options": "Role" }, { "fieldname": "customer_defaults_section", - "fieldtype": "Section Break", - "label": "Customer Defaults" + "fieldtype": "Section Break" }, { "fieldname": "column_break_4", @@ -170,12 +186,7 @@ }, { "fieldname": "item_price_settings_section", - "fieldtype": "Section Break", - "label": "Item Price Settings" - }, - { - "fieldname": "column_break_15", - "fieldtype": "Column Break" + "fieldtype": "Section Break" }, { "fieldname": "sales_transactions_settings_section", @@ -184,34 +195,41 @@ }, { "default": "0", + "description": "Enabling this will do the following:\n