Merge pull request #39681 from ruthra-kumar/fix_gl_logic_in_advance_as_liability

fix: incorrect advance paid in Sales/Purchase Order
diff --git a/.github/helper/update_pot_file.sh b/.github/helper/update_pot_file.sh
new file mode 100644
index 0000000..80fa348
--- /dev/null
+++ b/.github/helper/update_pot_file.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+set -e
+cd ~ || exit
+
+echo "Setting Up Bench..."
+
+pip install frappe-bench
+bench -v init frappe-bench --skip-assets --skip-redis-config-generation --python "$(which python)"
+cd ./frappe-bench || exit
+
+echo "Get ERPNext..."
+bench get-app --skip-assets erpnext "${GITHUB_WORKSPACE}"
+
+echo "Generating POT file..."
+bench generate-pot-file --app erpnext
+
+cd ./apps/erpnext || exit
+
+echo "Configuring git user..."
+git config user.email "developers@erpnext.com"
+git config user.name "frappe-pr-bot"
+
+echo "Setting the correct git remote..."
+# Here, the git remote is a local file path by default. Let's change it to the upstream repo.
+git remote set-url upstream https://github.com/frappe/erpnext.git
+
+echo "Creating a new branch..."
+isodate=$(date -u +"%Y-%m-%d")
+branch_name="pot_${BASE_BRANCH}_${isodate}"
+git checkout -b "${branch_name}"
+
+echo "Commiting changes..."
+git add .
+git commit -m "chore: update POT file"
+
+gh auth setup-git
+git push -u upstream "${branch_name}"
+
+echo "Creating a PR..."
+gh pr create --fill --base "${BASE_BRANCH}" --head "${branch_name}" -R frappe/erpnext
diff --git a/.github/workflows/generate-pot-file.yml b/.github/workflows/generate-pot-file.yml
new file mode 100644
index 0000000..a4e7e3f
--- /dev/null
+++ b/.github/workflows/generate-pot-file.yml
@@ -0,0 +1,38 @@
+# This workflow is agnostic to branches. Only maintain on develop branch.
+# To add/remove branches just modify the matrix.
+
+name: Regenerate POT file (translatable strings)
+on:
+  schedule:
+    # 9:30 UTC => 3 PM IST Sunday
+    - cron: "30 9 * * 0"
+  workflow_dispatch:
+
+jobs:
+  regeneratee-pot-file:
+    name: Release
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        branch: ["develop"]
+    permissions:
+      contents: write
+
+    steps:
+        - name: Checkout
+          uses: actions/checkout@v4
+          with:
+            ref: ${{ matrix.branch }}
+
+        - name: Setup Python
+          uses: actions/setup-python@v5
+          with:
+            python-version: "3.12"
+
+        - name: Run script to update POT file
+          run: |
+            bash ${GITHUB_WORKSPACE}/.github/helper/update_pot_file.sh
+          env:
+            GH_TOKEN: ${{ secrets.RELEASE_TOKEN }}
+            BASE_BRANCH: ${{ matrix.branch }}
diff --git a/crowdin.yml b/crowdin.yml
index 7baf064..84ece8d 100644
--- a/crowdin.yml
+++ b/crowdin.yml
@@ -1,3 +1,4 @@
 files:
   - source: /erpnext/locale/main.pot
     translation: /erpnext/locale/%two_letters_code%.po
+pull_request_title: "chore: sync translations from crowdin"
diff --git a/erpnext/accounts/doctype/cost_center/cost_center.json b/erpnext/accounts/doctype/cost_center/cost_center.json
index 7cbb290..2e66db7 100644
--- a/erpnext/accounts/doctype/cost_center/cost_center.json
+++ b/erpnext/accounts/doctype/cost_center/cost_center.json
@@ -41,7 +41,7 @@
    "in_list_view": 1,
    "in_standard_filter": 1,
    "label": "Cost Center Number",
-   "read_only": 1
+   "read_only_depends_on": "eval:!doc.__islocal"
   },
   {
    "fieldname": "parent_cost_center",
@@ -170,4 +170,4 @@
  "sort_field": "modified",
  "sort_order": "ASC",
  "states": []
-}
\ No newline at end of file
+}
diff --git a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
index 72c50ed..2ef0275 100644
--- a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
@@ -2108,6 +2108,92 @@
 		return_pi.submit()
 		self.assertEqual(return_pi.docstatus, 1)
 
+	def test_purchase_invoice_with_use_serial_batch_field_for_rejected_qty(self):
+		from erpnext.stock.doctype.item.test_item import make_item
+		from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
+
+		batch_item = make_item(
+			"_Test Purchase Invoice Batch Item For Rejected Qty",
+			properties={"has_batch_no": 1, "create_new_batch": 1, "is_stock_item": 1},
+		).name
+
+		serial_item = make_item(
+			"_Test Purchase Invoice Serial Item for Rejected Qty",
+			properties={"has_serial_no": 1, "is_stock_item": 1},
+		).name
+
+		rej_warehouse = create_warehouse("_Test Purchase INV Warehouse For Rejected Qty")
+
+		batch_no = "BATCH-PI-BNU-TPRBI-0001"
+		serial_nos = ["SNU-PI-TPRSI-0001", "SNU-PI-TPRSI-0002", "SNU-PI-TPRSI-0003"]
+
+		if not frappe.db.exists("Batch", batch_no):
+			frappe.get_doc(
+				{
+					"doctype": "Batch",
+					"batch_id": batch_no,
+					"item": batch_item,
+				}
+			).insert()
+
+		for serial_no in serial_nos:
+			if not frappe.db.exists("Serial No", serial_no):
+				frappe.get_doc(
+					{
+						"doctype": "Serial No",
+						"item_code": serial_item,
+						"serial_no": serial_no,
+					}
+				).insert()
+
+		pi = make_purchase_invoice(
+			item_code=batch_item,
+			received_qty=10,
+			qty=8,
+			rejected_qty=2,
+			update_stock=1,
+			rejected_warehouse=rej_warehouse,
+			use_serial_batch_fields=1,
+			batch_no=batch_no,
+			rate=100,
+			do_not_submit=1,
+		)
+
+		pi.append(
+			"items",
+			{
+				"item_code": serial_item,
+				"qty": 2,
+				"rate": 100,
+				"base_rate": 100,
+				"item_name": serial_item,
+				"uom": "Nos",
+				"stock_uom": "Nos",
+				"conversion_factor": 1,
+				"rejected_qty": 1,
+				"warehouse": pi.items[0].warehouse,
+				"rejected_warehouse": rej_warehouse,
+				"use_serial_batch_fields": 1,
+				"serial_no": "\n".join(serial_nos[:2]),
+				"rejected_serial_no": serial_nos[2],
+			},
+		)
+
+		pi.save()
+		pi.submit()
+
+		pi.reload()
+
+		for row in pi.items:
+			self.assertTrue(row.serial_and_batch_bundle)
+			self.assertTrue(row.rejected_serial_and_batch_bundle)
+
+			if row.item_code == batch_item:
+				self.assertEqual(row.batch_no, batch_no)
+			else:
+				self.assertEqual(row.serial_no, "\n".join(serial_nos[:2]))
+				self.assertEqual(row.rejected_serial_no, serial_nos[2])
+
 
 def set_advance_flag(company, flag, default_account):
 	frappe.db.set_value(
@@ -2215,7 +2301,7 @@
 	pi.cost_center = args.parent_cost_center
 
 	bundle_id = None
-	if args.get("batch_no") or args.get("serial_no"):
+	if not args.use_serial_batch_fields and ((args.get("batch_no") or args.get("serial_no"))):
 		batches = {}
 		qty = args.qty if args.qty is not None else 5
 		item_code = args.item or args.item_code or "_Test Item"
@@ -2262,6 +2348,9 @@
 			"rejected_warehouse": args.rejected_warehouse or "",
 			"asset_location": args.location or "",
 			"allow_zero_valuation_rate": args.get("allow_zero_valuation_rate") or 0,
+			"use_serial_batch_fields": args.get("use_serial_batch_fields") or 0,
+			"batch_no": args.get("batch_no") if args.get("use_serial_batch_fields") else "",
+			"serial_no": args.get("serial_no") if args.get("use_serial_batch_fields") else "",
 		},
 	)
 
diff --git a/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py b/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py
index c39a9db..405f587 100644
--- a/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py
+++ b/erpnext/accounts/doctype/tax_withholding_category/tax_withholding_category.py
@@ -546,6 +546,7 @@
 			"GL Entry",
 			{
 				"is_cancelled": 0,
+				"party_type": "Customer",
 				"party": ["in", parties],
 				"company": inv.company,
 				"voucher_no": ["in", vouchers],
@@ -560,6 +561,7 @@
 	conditions = []
 	conditions.append(ple.amount.lt(0))
 	conditions.append(ple.delinked == 0)
+	conditions.append(ple.party_type == "Customer")
 	conditions.append(ple.party.isin(parties))
 	conditions.append(ple.voucher_no == ple.against_voucher_no)
 	conditions.append(ple.company == inv.company)
@@ -579,6 +581,7 @@
 			{
 				"is_cancelled": 0,
 				"credit": [">", 0],
+				"party_type": "Customer",
 				"party": ["in", parties],
 				"posting_date": ["between", (tax_details.from_date, tax_details.to_date)],
 				"company": inv.company,
diff --git a/erpnext/controllers/buying_controller.py b/erpnext/controllers/buying_controller.py
index 91ee53a..8211857 100644
--- a/erpnext/controllers/buying_controller.py
+++ b/erpnext/controllers/buying_controller.py
@@ -559,7 +559,7 @@
 							{
 								"incoming_rate": incoming_rate,
 								"recalculate_rate": 1
-								if (self.is_subcontracted and (d.bom or d.fg_item)) or d.from_warehouse
+								if (self.is_subcontracted and (d.bom or d.get("fg_item"))) or d.from_warehouse
 								else 0,
 							}
 						)
diff --git a/erpnext/controllers/queries.py b/erpnext/controllers/queries.py
index c46ef50..a477a0d 100644
--- a/erpnext/controllers/queries.py
+++ b/erpnext/controllers/queries.py
@@ -439,9 +439,21 @@
 
 	filtered_batches = get_filterd_batches(batches)
 
+	if filters.get("is_inward"):
+		filtered_batches.extend(get_empty_batches(filters))
+
 	return filtered_batches
 
 
+def get_empty_batches(filters):
+	return frappe.get_all(
+		"Batch",
+		fields=["name", "batch_qty"],
+		filters={"item": filters.get("item_code"), "batch_qty": 0.0},
+		as_list=1,
+	)
+
+
 def get_filterd_batches(data):
 	batches = OrderedDict()
 
diff --git a/erpnext/controllers/stock_controller.py b/erpnext/controllers/stock_controller.py
index a67fbdc..a3fbdda 100644
--- a/erpnext/controllers/stock_controller.py
+++ b/erpnext/controllers/stock_controller.py
@@ -159,9 +159,6 @@
 				row.serial_no = clean_serial_no_string(row.serial_no)
 
 	def make_bundle_using_old_serial_batch_fields(self, table_name=None):
-		from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos
-		from erpnext.stock.serial_batch_bundle import SerialBatchCreation
-
 		if self.get("_action") == "update_after_submit":
 			return
 
@@ -190,58 +187,78 @@
 			if row.use_serial_batch_fields and (
 				not row.serial_and_batch_bundle and not row.get("rejected_serial_and_batch_bundle")
 			):
-				if self.doctype == "Stock Reconciliation":
-					qty = row.qty
-					type_of_transaction = "Inward"
-					warehouse = row.warehouse
-				elif table_name == "packed_items":
-					qty = row.qty
-					warehouse = row.warehouse
-					type_of_transaction = "Outward"
-					if self.is_return:
-						type_of_transaction = "Inward"
-				else:
-					qty = row.stock_qty if self.doctype != "Stock Entry" else row.transfer_qty
-					type_of_transaction = get_type_of_transaction(self, row)
-					warehouse = (
-						row.warehouse if self.doctype != "Stock Entry" else row.s_warehouse or row.t_warehouse
-					)
+				bundle_details = {
+					"item_code": row.item_code,
+					"posting_date": self.posting_date,
+					"posting_time": self.posting_time,
+					"voucher_type": self.doctype,
+					"voucher_no": self.name,
+					"voucher_detail_no": row.name,
+					"company": self.company,
+					"is_rejected": 1 if row.get("rejected_warehouse") else 0,
+					"use_serial_batch_fields": row.use_serial_batch_fields,
+					"do_not_submit": True,
+				}
 
-				sn_doc = SerialBatchCreation(
-					{
-						"item_code": row.item_code,
-						"warehouse": warehouse,
-						"posting_date": self.posting_date,
-						"posting_time": self.posting_time,
-						"voucher_type": self.doctype,
-						"voucher_no": self.name,
-						"voucher_detail_no": row.name,
-						"qty": qty,
-						"type_of_transaction": type_of_transaction,
-						"company": self.company,
-						"is_rejected": 1 if row.get("rejected_warehouse") else 0,
-						"serial_nos": get_serial_nos(row.serial_no) if row.serial_no else None,
-						"batches": frappe._dict({row.batch_no: qty}) if row.batch_no else None,
-						"batch_no": row.batch_no,
-						"use_serial_batch_fields": row.use_serial_batch_fields,
-						"do_not_submit": True,
-					}
-				).make_serial_and_batch_bundle()
+				if row.qty:
+					self.update_bundle_details(bundle_details, table_name, row)
+					self.create_serial_batch_bundle(bundle_details, row)
 
-				if sn_doc.is_rejected:
-					row.rejected_serial_and_batch_bundle = sn_doc.name
-					row.db_set(
-						{
-							"rejected_serial_and_batch_bundle": sn_doc.name,
-						}
-					)
-				else:
-					row.serial_and_batch_bundle = sn_doc.name
-					row.db_set(
-						{
-							"serial_and_batch_bundle": sn_doc.name,
-						}
-					)
+				if row.get("rejected_qty"):
+					self.update_bundle_details(bundle_details, table_name, row, is_rejected=True)
+					self.create_serial_batch_bundle(bundle_details, row)
+
+	def update_bundle_details(self, bundle_details, table_name, row, is_rejected=False):
+		from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos
+
+		# Since qty field is different for different doctypes
+		qty = row.get("qty")
+		warehouse = row.get("warehouse")
+
+		if table_name == "packed_items":
+			type_of_transaction = "Inward"
+			if not self.is_return:
+				type_of_transaction = "Outward"
+		else:
+			type_of_transaction = get_type_of_transaction(self, row)
+
+		if hasattr(row, "stock_qty"):
+			qty = row.stock_qty
+
+		if self.doctype == "Stock Entry":
+			qty = row.transfer_qty
+			warehouse = row.s_warehouse or row.t_warehouse
+
+		serial_nos = row.serial_no
+		if is_rejected:
+			serial_nos = row.get("rejected_serial_no")
+			type_of_transaction = "Inward" if not self.is_return else "Outward"
+			qty = row.get("rejected_qty")
+			warehouse = row.get("rejected_warehouse")
+
+		bundle_details.update(
+			{
+				"qty": qty,
+				"is_rejected": is_rejected,
+				"type_of_transaction": type_of_transaction,
+				"warehouse": warehouse,
+				"batches": frappe._dict({row.batch_no: qty}) if row.batch_no else None,
+				"serial_nos": get_serial_nos(serial_nos) if serial_nos else None,
+				"batch_no": row.batch_no,
+			}
+		)
+
+	def create_serial_batch_bundle(self, bundle_details, row):
+		from erpnext.stock.serial_batch_bundle import SerialBatchCreation
+
+		sn_doc = SerialBatchCreation(bundle_details).make_serial_and_batch_bundle()
+
+		field = "serial_and_batch_bundle"
+		if bundle_details.get("is_rejected"):
+			field = "rejected_serial_and_batch_bundle"
+
+		row.set(field, sn_doc.name)
+		row.db_set({field: sn_doc.name})
 
 	def validate_serial_nos_and_batches_with_bundle(self, row):
 		from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos
diff --git a/erpnext/controllers/subcontracting_controller.py b/erpnext/controllers/subcontracting_controller.py
index eac35b0..e66fe8b 100644
--- a/erpnext/controllers/subcontracting_controller.py
+++ b/erpnext/controllers/subcontracting_controller.py
@@ -859,6 +859,7 @@
 							item,
 							{
 								"warehouse": item.rejected_warehouse,
+								"serial_and_batch_bundle": item.get("rejected_serial_and_batch_bundle"),
 								"actual_qty": flt(item.rejected_qty) * flt(item.conversion_factor),
 								"incoming_rate": 0.0,
 							},
diff --git a/erpnext/crm/doctype/email_campaign/email_campaign.py b/erpnext/crm/doctype/email_campaign/email_campaign.py
index 17cf0e4..0ad19a4 100644
--- a/erpnext/crm/doctype/email_campaign/email_campaign.py
+++ b/erpnext/crm/doctype/email_campaign/email_campaign.py
@@ -144,3 +144,4 @@
 	for entry in email_campaigns:
 		email_campaign = frappe.get_doc("Email Campaign", entry.name)
 		email_campaign.update_status()
+		email_campaign.save()
diff --git a/erpnext/locale/de.po b/erpnext/locale/de.po
index e1be2f8..813c307 100644
--- a/erpnext/locale/de.po
+++ b/erpnext/locale/de.po
@@ -3,7 +3,7 @@
 "Project-Id-Version: frappe\n"
 "Report-Msgid-Bugs-To: info@erpnext.com\n"
 "POT-Creation-Date: 2024-01-29 18:13+0053\n"
-"PO-Revision-Date: 2024-02-22 19:45\n"
+"PO-Revision-Date: 2024-03-06 14:36\n"
 "Last-Translator: info@erpnext.com\n"
 "Language-Team: German\n"
 "MIME-Version: 1.0\n"
@@ -295,7 +295,12 @@
 "- Issue of raw-material to shop material\n"
 "- Progress on each Workstation via Job Card\n"
 "- Manufactured Quantity against Work Order\n"
-msgstr ""
+msgstr "# Erstellen Sie einen Arbeitsauftrag\n\n"
+"Ein Arbeitsauftrag oder ein Job wird von der Produktionsleitung an die Fertigungsabteilung erteilt, um die Herstellung einer bestimmten Menge eines Artikels zu veranlassen. Ein Arbeitsauftrag enthält Details über den Produktionsartikel, seine Stückliste, die zu produzierenden Mengen und die Vorgänge.\n\n"
+"Über den Arbeitsauftrag können Sie verschiedene Produktionsstatus verfolgen, wie z. B.:\n\n"
+"- Ausgabe des Rohmaterials an das Fertigungsmaterial\n"
+"- Fortschritt an jedem Arbeitsplatz über die Jobkarte\n"
+"- Gefertigte Menge im Arbeitsauftrag\n"
 
 #. Description of the Onboarding Step 'Create an Item'
 #: setup/onboarding_step/create_an_item/create_an_item.json
@@ -336,7 +341,9 @@
 msgid "# Financial Statements\n\n"
 "In ERPNext, you can get crucial financial reports like [Balance Sheet] and [Profit and Loss] statements with a click of a button. You can run in the report for a different period and plot analytics charts premised on statement data. For more reports, check sections like Financial Statements, General Ledger, and Profitability reports.\n\n"
 "<b>[Check Accounting reports](https://docs.erpnext.com/docs/v13/user/manual/en/accounts/accounting-reports)</b>"
-msgstr ""
+msgstr "# Finanzberichte\n\n"
+"In ERPNext können Sie mit einem Klick wichtige Finanzberichte wie [Bilanz] und [Gewinn- und Verlustrechnungen] abrufen. Sie können den Bericht für einen beliebigen Zeitraum ausführen und Diagramme basierend auf den Daten erstellen. Weitere Berichte finden Sie in den Abschnitten „Finanzberichte“, „Hauptbuch“ und „Rentabilitätsberichte“.\n\n"
+"<b>[Buchhaltungsberichte prüfen](https://docs.erpnext.com/docs/v13/user/manual/en/accounts/accounting-reports)</b>"
 
 #. Description of the Onboarding Step 'Review Fixed Asset Accounts'
 #: assets/onboarding_step/fixed_asset_accounts/fixed_asset_accounts.json
@@ -5489,7 +5496,7 @@
 #: accounts/doctype/process_payment_reconciliation_log/process_payment_reconciliation_log.json
 msgctxt "Process Payment Reconciliation Log"
 msgid "All allocations have been successfully reconciled"
-msgstr ""
+msgstr "Alle Zuweisungen wurden erfolgreich abgeglichen"
 
 #: support/doctype/issue/issue.js:97
 msgid "All communications including and above this shall be moved into the new Issue"
@@ -5742,7 +5749,7 @@
 #: manufacturing/doctype/manufacturing_settings/manufacturing_settings.json
 msgctxt "Manufacturing Settings"
 msgid "Allow Excess Material Transfer"
-msgstr ""
+msgstr "Transfer von überschüssigem Material zulassen"
 
 #. Label of a Check field in DocType 'POS Payment Method'
 #: accounts/doctype/pos_payment_method/pos_payment_method.json
@@ -5854,7 +5861,7 @@
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "Allow Purchase Invoice Creation Without Purchase Receipt"
-msgstr ""
+msgstr "Erstellen von Eingangsrechnungen ohne Eingangsbeleg zulassen"
 
 #. Label of a Check field in DocType 'Item Variant Settings'
 #: stock/doctype/item_variant_settings/item_variant_settings.json
@@ -5998,7 +6005,7 @@
 #: manufacturing/doctype/manufacturing_settings/manufacturing_settings.json
 msgctxt "Manufacturing Settings"
 msgid "Allow transferring raw materials even after the Required Quantity is fulfilled"
-msgstr ""
+msgstr "Rohstoffübertragung auch nach Erfüllung der erforderlichen Menge erlauben"
 
 #. Label of a Check field in DocType 'Repost Allowed Types'
 #: accounts/doctype/repost_allowed_types/repost_allowed_types.json
@@ -7562,7 +7569,7 @@
 #: accounts/doctype/journal_entry/journal_entry.json
 msgctxt "Journal Entry"
 msgid "Apply Tax Withholding Amount "
-msgstr ""
+msgstr "Quellensteuerbetrag anwenden"
 
 #. Label of a Check field in DocType 'Accounting Dimension Filter'
 #: accounts/doctype/accounting_dimension_filter/accounting_dimension_filter.json
@@ -8748,7 +8755,7 @@
 #: buying/doctype/buying_settings/buying_settings.json
 msgctxt "Buying Settings"
 msgid "Auto Create Subcontracting Order"
-msgstr ""
+msgstr "Unterauftrag automatisch erstellen"
 
 #. Label of a Check field in DocType 'Fiscal Year'
 #: accounts/doctype/fiscal_year/fiscal_year.json
@@ -10085,13 +10092,13 @@
 #. Name of a DocType
 #: accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.json
 msgid "Bank Reconciliation Tool"
-msgstr ""
+msgstr "Bankabstimmungswerkzeug"
 
 #. Label of a Link in the Accounting Workspace
 #: accounts/workspace/accounting/accounting.json
 msgctxt "Bank Reconciliation Tool"
 msgid "Bank Reconciliation Tool"
-msgstr ""
+msgstr "Bankabstimmungswerkzeug"
 
 #. Name of a DocType
 #: accounts/doctype/bank_statement_import/bank_statement_import.json
@@ -11114,11 +11121,11 @@
 #. Name of a DocType
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgid "Bisect Accounting Statements"
-msgstr ""
+msgstr "Buchhaltungsberichte teilen"
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:9
 msgid "Bisect Left"
-msgstr ""
+msgstr "Links teilen"
 
 #. Name of a DocType
 #: accounts/doctype/bisect_nodes/bisect_nodes.json
@@ -11127,27 +11134,27 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:13
 msgid "Bisect Right"
-msgstr ""
+msgstr "Rechts teilen"
 
 #. Label of a Heading field in DocType 'Bisect Accounting Statements'
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Bisecting From"
-msgstr ""
+msgstr "Teilen ab"
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:61
 msgid "Bisecting Left ..."
-msgstr ""
+msgstr "Teile links ..."
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:71
 msgid "Bisecting Right ..."
-msgstr ""
+msgstr "Teile rechts ..."
 
 #. Label of a Heading field in DocType 'Bisect Accounting Statements'
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Bisecting To"
-msgstr ""
+msgstr "Teilen bis"
 
 #: setup/setup_wizard/operations/install_fixtures.py:236
 msgid "Black"
@@ -11688,7 +11695,7 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:20
 msgid "Build Tree"
-msgstr ""
+msgstr "Baum erstellen"
 
 #: manufacturing/report/work_order_stock_report/work_order_stock_report.py:155
 msgid "Buildable Qty"
@@ -12053,7 +12060,7 @@
 
 #: telephony/doctype/call_log/call_log.js:8
 msgid "Callback"
-msgstr ""
+msgstr "Rückruf"
 
 #. Name of a DocType
 #. Label of a Card Break in the CRM Workspace
@@ -16685,7 +16692,7 @@
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "Control Historical Stock Transactions"
-msgstr ""
+msgstr "Historische Lagerbewegungen überprüfen"
 
 #: public/js/utils.js:684
 msgid "Conversion Factor"
@@ -16896,23 +16903,23 @@
 
 #: manufacturing/doctype/job_card/job_card.js:146
 msgid "Corrective Job Card"
-msgstr ""
+msgstr "Nacharbeitsauftrag"
 
 #: manufacturing/doctype/job_card/job_card.js:151
 msgid "Corrective Operation"
-msgstr ""
+msgstr "Nacharbeit"
 
 #. Label of a Tab Break field in DocType 'Job Card'
 #: manufacturing/doctype/job_card/job_card.json
 msgctxt "Job Card"
 msgid "Corrective Operation"
-msgstr ""
+msgstr "Nacharbeit"
 
 #. Label of a Currency field in DocType 'Work Order'
 #: manufacturing/doctype/work_order/work_order.json
 msgctxt "Work Order"
 msgid "Corrective Operation Cost"
-msgstr ""
+msgstr "Nacharbeitskosten"
 
 #. Label of a Select field in DocType 'Quality Action'
 #: quality_management/doctype/quality_action/quality_action.json
@@ -17540,7 +17547,7 @@
 #: buying/doctype/supplier_scorecard_variable/supplier_scorecard_variable.py:46
 #: buying/doctype/supplier_scorecard_variable/supplier_scorecard_variable.py:50
 msgid "Could not find path for "
-msgstr ""
+msgstr "Konnte keinen Pfad finden für "
 
 #: accounts/report/dimension_wise_accounts_balance_report/dimension_wise_accounts_balance_report.py:128
 #: accounts/report/financial_statements.py:236
@@ -18267,7 +18274,7 @@
 
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.js:226
 msgid "Creating Subcontracting Receipt ..."
-msgstr ""
+msgstr "Erstelle Unterauftragsbeleg ..."
 
 #: setup/doctype/employee/employee.js:85
 msgid "Creating User..."
@@ -21473,7 +21480,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "Default Purchase Unit of Measure"
-msgstr "Standard Maßeinheit Verkauf"
+msgstr "Standard Maßeinheit Einkauf"
 
 #. Label of a Data field in DocType 'CRM Settings'
 #: crm/doctype/crm_settings/crm_settings.json
@@ -27364,7 +27371,7 @@
 #: stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py:195
 #: stock/report/stock_ledger_variance/stock_ledger_variance.py:119
 msgid "FIFO/LIFO Queue"
-msgstr ""
+msgstr "FIFO/LIFO-Warteschlange"
 
 #: erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.js:62
 #: manufacturing/doctype/bom_creator/bom_creator_list.js:13
@@ -27752,13 +27759,13 @@
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.json
 msgctxt "Payment Reconciliation"
 msgid "Filter on Invoice"
-msgstr ""
+msgstr "Nach Rechnung filtern"
 
 #. Label of a Data field in DocType 'Payment Reconciliation'
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.json
 msgctxt "Payment Reconciliation"
 msgid "Filter on Payment"
-msgstr ""
+msgstr "Nach Zahlung filtern"
 
 #: accounts/doctype/payment_entry/payment_entry.js:696
 #: public/js/bank_reconciliation_tool/dialog_manager.js:192
@@ -27811,7 +27818,7 @@
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgctxt "BOM Creator"
 msgid "Final Product"
-msgstr ""
+msgstr "Endprodukt"
 
 #. Name of a DocType
 #: accounts/doctype/finance_book/finance_book.json
@@ -28103,7 +28110,7 @@
 #. Title of an Onboarding Step
 #: manufacturing/onboarding_step/create_product/create_product.json
 msgid "Finished Items"
-msgstr ""
+msgstr "Fertigerzeugnisse"
 
 #. Label of a Time field in DocType 'Project'
 #: projects/doctype/project/project.json
@@ -30658,7 +30665,7 @@
 #: selling/doctype/quotation_item/quotation_item.json
 msgctxt "Quotation Item"
 msgid "Has Alternative Item"
-msgstr ""
+msgstr "Hat alternativen Artikel"
 
 #. Label of a Check field in DocType 'Item'
 #: stock/doctype/item/item.json
@@ -30862,7 +30869,7 @@
 
 #: stock/stock_ledger.py:1669
 msgid "Here are the options to proceed:"
-msgstr ""
+msgstr "Hier sind die Optionen für das weitere Vorgehen:"
 
 #. Description of the 'Family Background' (Small Text) field in DocType
 #. 'Employee'
@@ -30879,7 +30886,7 @@
 
 #: setup/doctype/employee/employee.js:122
 msgid "Here, you can select a senior of this Employee. Based on this, Organization Chart will be populated."
-msgstr ""
+msgstr "Hier können Sie einen Vorgesetzten dieses Mitarbeiters auswählen. Auf dieser Grundlage wird das Organigramm erstellt."
 
 #: setup/doctype/holiday_list/holiday_list.js:75
 msgid "Here, your weekly offs are pre-populated based on the previous selections. You can add more rows to also add public and national holidays individually."
@@ -34107,7 +34114,7 @@
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "Is Cash or Non Trade Discount"
-msgstr ""
+msgstr "Ist Skonto bzw. kein Handelsrabatt "
 
 #. Label of a Check field in DocType 'Share Balance'
 #: accounts/doctype/share_balance/share_balance.json
@@ -34155,7 +34162,7 @@
 #: manufacturing/doctype/operation/operation.json
 msgctxt "Operation"
 msgid "Is Corrective Operation"
-msgstr ""
+msgstr "Ist Nacharbeit"
 
 #. Label of a Check field in DocType 'Pricing Rule'
 #: accounts/doctype/pricing_rule/pricing_rule.json
@@ -34375,7 +34382,7 @@
 #: assets/doctype/asset/asset.json
 msgctxt "Asset"
 msgid "Is Fully Depreciated"
-msgstr ""
+msgstr "Ist vollständig abgeschrieben"
 
 #: accounts/doctype/account/account_tree.js:110
 #: accounts/doctype/cost_center/cost_center_tree.js:23
@@ -43332,7 +43339,7 @@
 
 #: telephony/doctype/call_log/call_log.py:119
 msgid "No employee was scheduled for call popup"
-msgstr ""
+msgstr "Es war kein Mitarbeiter für das Anruf-Popup eingeplant"
 
 #: accounts/doctype/payment_entry/payment_entry.js:1064
 msgid "No gain or loss in the exchange rate"
@@ -43458,7 +43465,7 @@
 
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.py:677
 msgid "No records found in Allocation table"
-msgstr ""
+msgstr "Keine Datensätze in der Zuteilungstabelle gefunden"
 
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.py:579
 msgid "No records found in the Invoices table"
@@ -43466,7 +43473,7 @@
 
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.py:582
 msgid "No records found in the Payments table"
-msgstr ""
+msgstr "Keine Datensätze in der Zahlungstabelle gefunden"
 
 #. Description of the 'Stock Frozen Up To' (Date) field in DocType 'Stock
 #. Settings'
@@ -49463,7 +49470,7 @@
 
 #: stock/doctype/stock_ledger_entry/stock_ledger_entry.py:321
 msgid "Please contact any of the following users to {} this transaction."
-msgstr ""
+msgstr "Bitte kontaktieren Sie einen der folgenden Benutzer, um diese Transaktion zu {}."
 
 #: selling/doctype/customer/customer.py:531
 msgid "Please contact your administrator to extend the credit limits for {0}."
@@ -49529,7 +49536,7 @@
 
 #: accounts/doctype/sales_invoice/sales_invoice.py:871
 msgid "Please ensure {} account is a Balance Sheet account."
-msgstr ""
+msgstr "Bitte stellen Sie sicher, dass das Konto {} ein Bilanzkonto ist."
 
 #: accounts/doctype/purchase_invoice/purchase_invoice.py:366
 msgid "Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account."
@@ -50914,7 +50921,7 @@
 
 #: buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py:246
 msgid "Price ({0})"
-msgstr ""
+msgstr "Preis ({0})"
 
 #. Label of a Section Break field in DocType 'Pricing Rule'
 #: accounts/doctype/pricing_rule/pricing_rule.json
@@ -51314,7 +51321,7 @@
 
 #: buying/report/supplier_quotation_comparison/supplier_quotation_comparison.py:253
 msgid "Price Per Unit ({0})"
-msgstr ""
+msgstr "Preis pro Einheit ({0})"
 
 #: selling/page/point_of_sale/pos_controller.js:553
 msgid "Price is not set for the item."
@@ -52110,7 +52117,7 @@
 
 #: stock/doctype/putaway_rule/putaway_rule.py:60
 msgid "Priority cannot be lesser than 1."
-msgstr ""
+msgstr "Die Priorität kann nicht kleiner als 1 sein."
 
 #: support/doctype/service_level_agreement/service_level_agreement.py:755
 msgid "Priority has been changed to {0}."
@@ -52668,7 +52675,7 @@
 #. Title of an Onboarding Step
 #: manufacturing/onboarding_step/production_planning/production_planning.json
 msgid "Production Planning"
-msgstr ""
+msgstr "Produktionsplanung"
 
 #. Name of a report
 #. Label of a Link in the Manufacturing Workspace
@@ -52685,17 +52692,17 @@
 #. Subtitle of the Module Onboarding 'Buying'
 #: buying/module_onboarding/buying/buying.json
 msgid "Products, Purchases, Analysis, and more."
-msgstr ""
+msgstr "Produkte, Einkäufe, Analysen und mehr."
 
 #. Subtitle of the Module Onboarding 'Manufacturing'
 #: manufacturing/module_onboarding/manufacturing/manufacturing.json
 msgid "Products, Raw Materials, BOM, Work Order, and more."
-msgstr ""
+msgstr "Produkte, Rohmaterialien, Stücklisten, Arbeitsaufträge und mehr."
 
 #. Subtitle of the Module Onboarding 'Selling'
 #: selling/module_onboarding/selling/selling.json
 msgid "Products, Sales, Analysis, and more."
-msgstr ""
+msgstr "Produkte, Vertrieb, Analyse und mehr."
 
 #. Label of a Tab Break field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
@@ -52736,13 +52743,13 @@
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Profit and Loss Summary"
-msgstr ""
+msgstr "Gewinn und Verlust Zusammenfassung"
 
 #. Label of a Float field in DocType 'Bisect Nodes'
 #: accounts/doctype/bisect_nodes/bisect_nodes.json
 msgctxt "Bisect Nodes"
 msgid "Profit and Loss Summary"
-msgstr ""
+msgstr "Gewinn und Verlust Zusammenfassung"
 
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.py:132
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.py:133
@@ -52774,11 +52781,11 @@
 #: projects/doctype/task/task.py:143
 #, python-format
 msgid "Progress % for a task cannot be more than 100."
-msgstr ""
+msgstr "Der prozentuale Fortschritt für eine Aufgabe darf nicht mehr als 100 betragen."
 
 #: projects/report/delayed_tasks_summary/delayed_tasks_summary.py:94
 msgid "Progress (%)"
-msgstr ""
+msgstr "Fortschritt (%)"
 
 #. Name of a DocType
 #: accounts/doctype/sales_invoice/sales_invoice.js:973
@@ -53142,7 +53149,7 @@
 
 #: templates/pages/projects.html:114
 msgid "Project Progress:"
-msgstr ""
+msgstr "Projektfortschritt:"
 
 #: projects/report/project_wise_stock_tracking/project_wise_stock_tracking.py:47
 msgid "Project Start Date"
@@ -56765,7 +56772,7 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.py:226
 msgid "Reached Root"
-msgstr ""
+msgstr "Oberste Ebene erreicht"
 
 #. Label of a Check field in DocType 'POS Field'
 #: accounts/doctype/pos_field/pos_field.json
@@ -56842,7 +56849,7 @@
 #: stock/doctype/quality_inspection_reading/quality_inspection_reading.json
 msgctxt "Quality Inspection Reading"
 msgid "Reading Value"
-msgstr ""
+msgstr "Abgelesener Wert"
 
 #. Label of a Table field in DocType 'Quality Inspection'
 #: stock/doctype/quality_inspection/quality_inspection.json
@@ -57256,15 +57263,15 @@
 #: accounts/doctype/process_payment_reconciliation_log/process_payment_reconciliation_log.json
 msgctxt "Process Payment Reconciliation Log"
 msgid "Reconciliation Error Log"
-msgstr ""
+msgstr "Abstimmungsfehlerprotokoll"
 
 #: accounts/doctype/process_payment_reconciliation/process_payment_reconciliation_dashboard.py:9
 msgid "Reconciliation Logs"
-msgstr ""
+msgstr "Abstimmungsprotokolle"
 
 #: accounts/doctype/process_payment_reconciliation_log/process_payment_reconciliation_log.js:13
 msgid "Reconciliation Progress"
-msgstr ""
+msgstr "Abstimmungsfortschritt"
 
 #. Label of a HTML field in DocType 'Call Log'
 #: telephony/doctype/call_log/call_log.json
@@ -58745,7 +58752,7 @@
 #: accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
 msgctxt "Currency Exchange Settings"
 msgid "Request Parameters"
-msgstr ""
+msgstr "Anfrageparameter"
 
 #: accounts/doctype/pos_invoice/pos_invoice.js:269
 msgid "Request Timeout"
@@ -59071,13 +59078,13 @@
 
 #: stock/report/reserved_stock/reserved_stock.js:121
 msgid "Reservation Based On"
-msgstr ""
+msgstr "Reservierung basierend auf"
 
 #. Label of a Select field in DocType 'Stock Reservation Entry'
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.json
 msgctxt "Stock Reservation Entry"
 msgid "Reservation Based On"
-msgstr ""
+msgstr "Reservierung basierend auf"
 
 #: selling/doctype/sales_order/sales_order.js:68
 #: stock/doctype/pick_list/pick_list.js:110
@@ -59086,19 +59093,19 @@
 
 #: selling/doctype/sales_order/sales_order.js:322
 msgid "Reserve Stock"
-msgstr ""
+msgstr "Reservierter Bestand"
 
 #. Label of a Check field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Reserve Stock"
-msgstr ""
+msgstr "Reservierter Bestand"
 
 #. Label of a Check field in DocType 'Sales Order Item'
 #: selling/doctype/sales_order_item/sales_order_item.json
 msgctxt "Sales Order Item"
 msgid "Reserve Stock"
-msgstr ""
+msgstr "Reservierter Bestand"
 
 #. Label of a Link field in DocType 'Purchase Order Item Supplied'
 #: buying/doctype/purchase_order_item_supplied/purchase_order_item_supplied.json
@@ -59137,7 +59144,7 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:133
 msgid "Reserved Qty ({0}) cannot be a fraction. To allow this, disable '{1}' in UOM {3}."
-msgstr ""
+msgstr "Die reservierte Menge ({0}) darf kein Bruchteil sein. Um dies zu ermöglichen, deaktivieren Sie '{1}' in UOM {3}."
 
 #. Label of a Float field in DocType 'Bin'
 #: stock/doctype/bin/bin.json
@@ -59155,17 +59162,17 @@
 #: stock/doctype/bin/bin.json
 msgctxt "Bin"
 msgid "Reserved Qty for Production Plan"
-msgstr ""
+msgstr "Reservierte Menge für Produktionsplan"
 
 #. Label of a Float field in DocType 'Bin'
 #: stock/doctype/bin/bin.json
 msgctxt "Bin"
 msgid "Reserved Qty for Subcontract"
-msgstr ""
+msgstr "Reservierte Menge für Unterauftrag"
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:497
 msgid "Reserved Qty should be greater than Delivered Qty."
-msgstr ""
+msgstr "Die reservierte Menge sollte größer sein als die gelieferte Menge."
 
 #: stock/report/item_shortage_report/item_shortage_report.py:116
 msgid "Reserved Quantity"
@@ -59177,7 +59184,7 @@
 
 #: stock/stock_ledger.py:1982
 msgid "Reserved Serial No."
-msgstr ""
+msgstr "Reservierte Seriennr."
 
 #. Name of a report
 #: selling/doctype/sales_order/sales_order.js:79
@@ -59196,23 +59203,23 @@
 
 #: stock/stock_ledger.py:2012
 msgid "Reserved Stock for Batch"
-msgstr ""
+msgstr "Reservierter Bestand für Charge"
 
 #: stock/report/stock_projected_qty/stock_projected_qty.py:192
 msgid "Reserved for POS Transactions"
-msgstr ""
+msgstr "Für Kassentransaktionen reserviert"
 
 #: stock/report/stock_projected_qty/stock_projected_qty.py:171
 msgid "Reserved for Production"
-msgstr ""
+msgstr "Für die Produktion reserviert"
 
 #: stock/report/stock_projected_qty/stock_projected_qty.py:178
 msgid "Reserved for Production Plan"
-msgstr ""
+msgstr "Für Produktionsplan reserviert"
 
 #: stock/report/stock_projected_qty/stock_projected_qty.py:185
 msgid "Reserved for Sub Contracting"
-msgstr ""
+msgstr "Für Unteraufträge reserviert"
 
 #: stock/page/stock_balance/stock_balance.js:53
 msgid "Reserved for manufacturing"
@@ -59238,7 +59245,7 @@
 
 #: erpnext_integrations/doctype/plaid_settings/plaid_settings.js:19
 msgid "Reset Plaid Link"
-msgstr ""
+msgstr "Plaid-Link zurücksetzen"
 
 #: support/doctype/issue/issue.js:39
 msgid "Reset Service Level Agreement"
@@ -60274,11 +60281,11 @@
 
 #: stock/doctype/stock_reconciliation/stock_reconciliation.py:428
 msgid "Row #"
-msgstr ""
+msgstr "Zeile #"
 
 #: stock/doctype/stock_reconciliation/stock_reconciliation.py:334
 msgid "Row # {0}:"
-msgstr ""
+msgstr "Zeile # {0}:"
 
 #: controllers/sales_and_purchase_return.py:181
 msgid "Row # {0}: Cannot return more than {1} for Item {2}"
@@ -60304,15 +60311,15 @@
 
 #: stock/doctype/item/item.py:480
 msgid "Row #{0}: A reorder entry already exists for warehouse {1} with reorder type {2}."
-msgstr ""
+msgstr "Zeile #{0}: Für das Lager {1} mit dem Nachbestellungstyp {2} ist bereits ein Nachbestellungseintrag vorhanden."
 
 #: stock/doctype/quality_inspection/quality_inspection.py:235
 msgid "Row #{0}: Acceptance Criteria Formula is incorrect."
-msgstr ""
+msgstr "Zeile #{0}: Die Formel für die Akzeptanzkriterien ist falsch."
 
 #: stock/doctype/quality_inspection/quality_inspection.py:215
 msgid "Row #{0}: Acceptance Criteria Formula is required."
-msgstr ""
+msgstr "Zeile #{0}: Die Formel für die Akzeptanzkriterien ist erforderlich."
 
 #: controllers/subcontracting_controller.py:72
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py:413
@@ -60446,7 +60453,7 @@
 
 #: controllers/stock_controller.py:336
 msgid "Row #{0}: Expense Account not set for the Item {1}. {2}"
-msgstr ""
+msgstr "Zeile #{0}: Aufwandskonto für den Artikel nicht festgelegt {1}. {2}"
 
 #: buying/doctype/purchase_order/purchase_order.py:378
 msgid "Row #{0}: Finished Good Item Qty can not be zero"
@@ -60474,7 +60481,7 @@
 
 #: accounts/doctype/tax_withholding_category/tax_withholding_category.py:44
 msgid "Row #{0}: From Date cannot be before To Date"
-msgstr ""
+msgstr "Zeile #{0}: Von-Datum kann nicht vor Bis-Datum liegen"
 
 #: public/js/utils/barcode_scanner.js:489
 msgid "Row #{0}: Item added"
@@ -60526,7 +60533,7 @@
 
 #: manufacturing/doctype/production_plan/production_plan.py:892
 msgid "Row #{0}: Please select Item Code in Assembly Items"
-msgstr ""
+msgstr "Zeile #{0}: Bitte wählen Sie den Artikelcode in den Baugruppenartikeln aus"
 
 #: manufacturing/doctype/production_plan/production_plan.py:895
 msgid "Row #{0}: Please select the BOM No in Assembly Items"
@@ -60546,7 +60553,7 @@
 
 #: public/js/utils/barcode_scanner.js:487
 msgid "Row #{0}: Qty increased by {1}"
-msgstr ""
+msgstr "Zeile #{0}: Menge erhöht um {1}"
 
 #: assets/doctype/asset_capitalization/asset_capitalization.py:264
 #: assets/doctype/asset_capitalization/asset_capitalization.py:306
@@ -60555,7 +60562,7 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:301
 msgid "Row #{0}: Qty should be less than or equal to Available Qty to Reserve (Actual Qty - Reserved Qty) {1} for Iem {2} against Batch {3} in Warehouse {4}."
-msgstr ""
+msgstr "Zeile #{0}: Die Menge sollte kleiner oder gleich der verfügbaren Menge zum Reservieren sein (Ist-Menge – reservierte Menge) {1} für Artikel {2} der Charge {3} im Lager {4}."
 
 #: controllers/accounts_controller.py:1018
 #: controllers/accounts_controller.py:3166
@@ -60564,15 +60571,15 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:1017
 msgid "Row #{0}: Quantity to reserve for the Item {1} should be greater than 0."
-msgstr ""
+msgstr "Zeile #{0}: Die zu reservierende Menge für den Artikel {1} sollte größer als 0 sein."
 
 #: utilities/transaction_base.py:113 utilities/transaction_base.py:119
 msgid "Row #{0}: Rate must be same as {1}: {2} ({3} / {4})"
-msgstr ""
+msgstr "Zeile #{0}: Einzelpreis muss gleich sein wie {1}: {2} ({3} / {4})"
 
 #: controllers/buying_controller.py:470
 msgid "Row #{0}: Received Qty must be equal to Accepted + Rejected Qty for Item {1}"
-msgstr ""
+msgstr "Zeile #{0}: Die erhaltene Menge muss gleich der angenommenen + abgelehnten Menge für Artikel {1} sein"
 
 #: accounts/doctype/payment_entry/payment_entry.js:1016
 msgid "Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry"
@@ -60588,7 +60595,7 @@
 
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py:387
 msgid "Row #{0}: Rejected Qty cannot be set for Scrap Item {1}."
-msgstr ""
+msgstr "Zeile #{0}: Die abgelehnte Menge kann nicht für den Ausschussartikel {1} festgelegt werden."
 
 #: controllers/subcontracting_controller.py:65
 msgid "Row #{0}: Rejected Warehouse is mandatory for the rejected Item {1}"
@@ -60600,7 +60607,7 @@
 
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py:382
 msgid "Row #{0}: Scrap Item Qty cannot be zero"
-msgstr ""
+msgstr "Zeile #{0}: Die Menge des Ausschussartikels darf nicht Null sein"
 
 #: controllers/selling_controller.py:212
 msgid "Row #{0}: Selling rate for item {1} is lower than its {2}.\n"
@@ -60619,7 +60626,7 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:264
 msgid "Row #{0}: Serial No {1} is already selected."
-msgstr ""
+msgstr "Zeile #{0}: Die Seriennummer {1} ist bereits ausgewählt."
 
 #: controllers/accounts_controller.py:395
 msgid "Row #{0}: Service End Date cannot be before Invoice Posting Date"
@@ -60639,7 +60646,7 @@
 
 #: stock/doctype/quality_inspection/quality_inspection.py:120
 msgid "Row #{0}: Status is mandatory"
-msgstr ""
+msgstr "Zeile #{0}: Status ist obligatorisch"
 
 #: accounts/doctype/journal_entry/journal_entry.py:381
 msgid "Row #{0}: Status must be {1} for Invoice Discounting {2}"
@@ -60647,7 +60654,7 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:273
 msgid "Row #{0}: Stock cannot be reserved for Item {1} against a disabled Batch {2}."
-msgstr ""
+msgstr "Zeile #{0}: Der Bestand kann nicht für Artikel {1} für eine deaktivierte Charge {2} reserviert werden."
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:962
 msgid "Row #{0}: Stock cannot be reserved for a non-stock Item {1}"
@@ -60655,23 +60662,23 @@
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:975
 msgid "Row #{0}: Stock cannot be reserved in group warehouse {1}."
-msgstr ""
+msgstr "Zeile #{0}: Bestand kann nicht im Gruppenlager {1} reserviert werden."
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:989
 msgid "Row #{0}: Stock is already reserved for the Item {1}."
-msgstr ""
+msgstr "Zeile #{0}: Für den Artikel {1} ist bereits ein Lagerbestand reserviert."
 
 #: stock/doctype/delivery_note/delivery_note.py:605
 msgid "Row #{0}: Stock is reserved for item {1} in warehouse {2}."
-msgstr ""
+msgstr "Zeile #{0}: Der Bestand ist für den Artikel {1} im Lager {2} reserviert."
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:285
 msgid "Row #{0}: Stock not available to reserve for Item {1} against Batch {2} in Warehouse {3}."
-msgstr ""
+msgstr "Zeile #{0}: Bestand nicht verfügbar für Artikel {1} von Charge {2} im Lager {3}."
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:1003
 msgid "Row #{0}: Stock not available to reserve for the Item {1} in Warehouse {2}."
-msgstr ""
+msgstr "Zeile #{0}: Kein Bestand für den Artikel {1} im Lager {2} verfügbar."
 
 #: controllers/stock_controller.py:110
 msgid "Row #{0}: The batch {1} has already expired."
@@ -60679,7 +60686,7 @@
 
 #: accounts/doctype/sales_invoice/sales_invoice.py:1687
 msgid "Row #{0}: The following Serial Nos are not present in Delivery Note {1}:"
-msgstr ""
+msgstr "Zeile #{0}: Die folgenden Seriennummern sind nicht im Lieferschein {1} enthalten:"
 
 #: manufacturing/doctype/workstation/workstation.py:116
 msgid "Row #{0}: Timings conflicts with row {1}"
@@ -60691,11 +60698,11 @@
 
 #: accounts/doctype/sales_invoice/sales_invoice.py:1402
 msgid "Row #{0}: You must select an Asset for Item {1}."
-msgstr ""
+msgstr "Zeile #{0}: Sie müssen einen Vermögensgegenstand für Artikel {1} auswählen."
 
 #: accounts/doctype/sales_invoice/sales_invoice.py:1696
 msgid "Row #{0}: {1} Serial numbers required for Item {2}. You have provided {3}."
-msgstr ""
+msgstr "Zeile #{0}: {1} Seriennummern erforderlich für Artikel {2}. Sie haben {3} angegeben."
 
 #: controllers/buying_controller.py:483 public/js/controllers/buying.js:208
 msgid "Row #{0}: {1} can not be negative for item {2}"
@@ -60715,7 +60722,7 @@
 
 #: buying/utils.py:106
 msgid "Row #{1}: Warehouse is mandatory for stock Item {0}"
-msgstr ""
+msgstr "Zeile #{1}: Lager ist obligatorisch für Artikel {0}"
 
 #: assets/doctype/asset_category/asset_category.py:65
 msgid "Row #{}: Currency of {} - {} doesn't matches company currency."
@@ -60735,7 +60742,7 @@
 
 #: accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py:99
 msgid "Row #{}: Original Invoice {} of return invoice {} is {}."
-msgstr ""
+msgstr "Zeile #{}: Originalrechnung {} der Rechnungskorrektur {} ist {}."
 
 #: accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py:87
 msgid "Row #{}: POS Invoice {} has been {}"
@@ -60787,7 +60794,7 @@
 
 #: accounts/doctype/purchase_invoice/purchase_invoice.py:433
 msgid "Row No {0}: Warehouse is required. Please set a Default Warehouse for Item {1} and Company {2}"
-msgstr ""
+msgstr "Zeile Nr. {0}: Lager ist erforderlich. Bitte legen Sie ein Standardlager für Artikel {1} und Unternehmen {2} fest"
 
 #: manufacturing/doctype/job_card/job_card.py:599
 msgid "Row {0} : Operation is required against the raw material item {1}"
@@ -60803,11 +60810,11 @@
 
 #: stock/doctype/stock_entry/stock_entry.py:1159
 msgid "Row {0}# Item {1} not found in 'Raw Materials Supplied' table in {2} {3}"
-msgstr ""
+msgstr "Zeile {0}# Artikel {1} wurde in der Tabelle „Gelieferte Rohstoffe“ in {2} {3} nicht gefunden"
 
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py:190
 msgid "Row {0}: Accepted Qty and Rejected Qty can't be zero at the same time."
-msgstr ""
+msgstr "Zeile {0}: Die akzeptierte Menge und die abgelehnte Menge können nicht gleichzeitig Null sein."
 
 #: accounts/doctype/journal_entry/journal_entry.py:509
 msgid "Row {0}: Account {1} and Party Type {2} have different account types"
@@ -60815,7 +60822,7 @@
 
 #: controllers/accounts_controller.py:2536
 msgid "Row {0}: Account {1} is a Group Account"
-msgstr ""
+msgstr "Zeile {0}: Konto {1} ist eine Kontogruppe"
 
 #: projects/doctype/timesheet/timesheet.py:117
 msgid "Row {0}: Activity Type is mandatory."
@@ -60851,7 +60858,7 @@
 
 #: controllers/accounts_controller.py:2549
 msgid "Row {0}: Cost Center {1} does not belong to Company {2}"
-msgstr ""
+msgstr "Zeile {0}: Die Kostenstelle {1} gehört nicht zum Unternehmen {2}"
 
 #: stock/doctype/landed_cost_voucher/landed_cost_voucher.py:116
 msgid "Row {0}: Cost center is required for an item {1}"
@@ -60945,11 +60952,11 @@
 
 #: controllers/buying_controller.py:400 controllers/selling_controller.py:479
 msgid "Row {0}: Item rate has been updated as per valuation rate since its an internal stock transfer"
-msgstr ""
+msgstr "Zeile {0}: Der Einzelpreis wurde gemäß dem Bewertungskurs aktualisiert, da es sich um eine interne Umlagerung handelt"
 
 #: controllers/subcontracting_controller.py:98
 msgid "Row {0}: Item {1} must be a stock item."
-msgstr ""
+msgstr "Zeile {0}: Artikel {1} muss ein Lagerartikel sein."
 
 #: controllers/subcontracting_controller.py:103
 msgid "Row {0}: Item {1} must be a subcontracted item."
@@ -60961,7 +60968,7 @@
 
 #: stock/doctype/packing_slip/packing_slip.py:148
 msgid "Row {0}: Packing Slip is already created for Item {1}."
-msgstr ""
+msgstr "Zeile {0}: Für den Artikel {1} wurde bereits ein Packzettel erstellt."
 
 #: accounts/doctype/journal_entry/journal_entry.py:687
 msgid "Row {0}: Party / Account does not match with {1} / {2} in {3} {4}"
@@ -60973,7 +60980,7 @@
 
 #: accounts/doctype/payment_terms_template/payment_terms_template.py:47
 msgid "Row {0}: Payment Term is mandatory"
-msgstr ""
+msgstr "Zeile {0}: Zahlungsbedingung ist obligatorisch"
 
 #: accounts/doctype/journal_entry/journal_entry.py:554
 msgid "Row {0}: Payment against Sales/Purchase Order should always be marked as advance"
@@ -60989,15 +60996,15 @@
 
 #: controllers/subcontracting_controller.py:118
 msgid "Row {0}: Please select a BOM for Item {1}."
-msgstr ""
+msgstr "Zeile {0}: Bitte wählen Sie eine Stückliste für Artikel {1}."
 
 #: controllers/subcontracting_controller.py:111
 msgid "Row {0}: Please select an active BOM for Item {1}."
-msgstr ""
+msgstr "Zeile {0}: Bitte wählen Sie eine aktive Stückliste für Artikel {1}."
 
 #: controllers/subcontracting_controller.py:115
 msgid "Row {0}: Please select an valid BOM for Item {1}."
-msgstr ""
+msgstr "Zeile {0}: Bitte wählen Sie eine gültige Stückliste für Artikel {1}."
 
 #: regional/italy/utils.py:310
 msgid "Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges"
@@ -61017,19 +61024,19 @@
 
 #: stock/doctype/landed_cost_voucher/landed_cost_voucher.py:93
 msgid "Row {0}: Purchase Invoice {1} has no stock impact."
-msgstr ""
+msgstr "Zeile {0}: Eingangsrechnung {1} hat keine Auswirkungen auf den Bestand."
 
 #: stock/doctype/packing_slip/packing_slip.py:154
 msgid "Row {0}: Qty cannot be greater than {1} for the Item {2}."
-msgstr ""
+msgstr "Zeile {0}: Die Menge darf für den Artikel {2} nicht größer als {1} sein."
 
 #: stock/doctype/stock_entry/stock_entry.py:407
 msgid "Row {0}: Qty in Stock UOM can not be zero."
-msgstr ""
+msgstr "Zeile {0}: Menge in Lager-ME kann nicht Null sein."
 
 #: stock/doctype/packing_slip/packing_slip.py:125
 msgid "Row {0}: Qty must be greater than 0."
-msgstr ""
+msgstr "Zeile {0}: Menge muss größer als 0 sein."
 
 #: stock/doctype/stock_entry/stock_entry.py:762
 msgid "Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3})"
@@ -61177,7 +61184,7 @@
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
 msgctxt "Serial and Batch Bundle"
 msgid "SABB-.########"
-msgstr ""
+msgstr "SABB-.########"
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Campaign'
 #: crm/doctype/campaign/campaign.json
@@ -61219,7 +61226,7 @@
 #: support/doctype/service_level_agreement/service_level_agreement.json
 msgctxt "Service Level Agreement"
 msgid "SLA Fulfilled On"
-msgstr ""
+msgstr "SLA erfüllt am"
 
 #. Name of a DocType
 #: support/doctype/sla_fulfilled_on_status/sla_fulfilled_on_status.json
@@ -61230,7 +61237,7 @@
 #: support/doctype/service_level_agreement/service_level_agreement.json
 msgctxt "Service Level Agreement"
 msgid "SLA Paused On"
-msgstr ""
+msgstr "SLA pausiert am"
 
 #: public/js/utils.js:1015
 msgid "SLA is on hold since {0}"
@@ -61242,7 +61249,7 @@
 
 #: support/doctype/service_level_agreement/service_level_agreement.js:32
 msgid "SLA will be applied on every {0}"
-msgstr ""
+msgstr "SLA wird alle {0} angewendet"
 
 #. Name of a DocType
 #: selling/doctype/sms_center/sms_center.json
@@ -62734,7 +62741,7 @@
 
 #: public/js/utils/serial_no_batch_selector.js:151
 msgid "Scan Batch No"
-msgstr ""
+msgstr "Chargennummer scannen"
 
 #. Label of a Check field in DocType 'Pick List'
 #: stock/doctype/pick_list/pick_list.json
@@ -62750,15 +62757,15 @@
 
 #: public/js/utils/serial_no_batch_selector.js:136
 msgid "Scan Serial No"
-msgstr ""
+msgstr "Seriennummer scannen"
 
 #: public/js/utils/barcode_scanner.js:172
 msgid "Scan barcode for item {0}"
-msgstr ""
+msgstr "Barcode für Artikel {0} scannen"
 
 #: stock/doctype/stock_reconciliation/stock_reconciliation.js:94
 msgid "Scan mode enabled, existing quantity will not be fetched."
-msgstr ""
+msgstr "Scanmodus aktiviert, vorhandene Menge wird nicht abgerufen."
 
 #. Label of a Attach field in DocType 'Cheque Print Template'
 #: accounts/doctype/cheque_print_template/cheque_print_template.json
@@ -62768,7 +62775,7 @@
 
 #: public/js/utils/barcode_scanner.js:238
 msgid "Scanned Quantity"
-msgstr ""
+msgstr "Gescannte Menge"
 
 #. Label of a Section Break field in DocType 'Maintenance Schedule'
 #: maintenance/doctype/maintenance_schedule/maintenance_schedule.json
@@ -62837,7 +62844,7 @@
 #: manufacturing/doctype/job_card/job_card.json
 msgctxt "Job Card"
 msgid "Scheduled Time Logs"
-msgstr ""
+msgstr "Geplante Zeitprotokolle"
 
 #: accounts/doctype/bank_statement_import/bank_statement_import.py:84
 #: accounts/doctype/ledger_merge/ledger_merge.py:39
@@ -62856,7 +62863,7 @@
 
 #: accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py:549
 msgid "Scheduler is inactive. Cannot enqueue job."
-msgstr ""
+msgstr "Zeitplaner ist inaktiv. Aufgabe kann nicht eingereiht werden."
 
 #: accounts/doctype/bank_statement_import/bank_statement_import.py:84
 #: accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py:232
@@ -62865,7 +62872,7 @@
 
 #: accounts/doctype/ledger_merge/ledger_merge.py:39
 msgid "Scheduler is inactive. Cannot merge accounts."
-msgstr ""
+msgstr "Zeitplaner ist inaktiv. Konten können nicht zusammengeführt werden."
 
 #. Label of a Table field in DocType 'Maintenance Schedule'
 #: maintenance/doctype/maintenance_schedule/maintenance_schedule.json
@@ -62877,7 +62884,7 @@
 #: stock/doctype/stock_reposting_settings/stock_reposting_settings.json
 msgctxt "Stock Reposting Settings"
 msgid "Scheduling"
-msgstr ""
+msgstr "Zeitplan"
 
 #. Label of a Small Text field in DocType 'Employee Education'
 #: setup/doctype/employee_education/employee_education.json
@@ -63269,7 +63276,7 @@
 
 #: public/js/bank_reconciliation_tool/dialog_manager.js:248
 msgid "Select Vouchers to Match"
-msgstr ""
+msgstr "Passende Belege auswählen"
 
 #: public/js/stock_analytics.js:46
 msgid "Select Warehouse..."
@@ -63289,7 +63296,7 @@
 
 #: buying/doctype/supplier/supplier.js:160
 msgid "Select a Customer"
-msgstr ""
+msgstr "Wählen Sie einen Kunden"
 
 #: support/doctype/service_level_agreement/service_level_agreement.py:111
 msgid "Select a Default Priority."
@@ -63309,7 +63316,7 @@
 
 #: stock/doctype/item/item.js:809
 msgid "Select an Item Group."
-msgstr ""
+msgstr "Wählen Sie eine Artikelgruppe."
 
 #: accounts/report/general_ledger/general_ledger.py:31
 msgid "Select an account to print in account currency"
@@ -63358,16 +63365,16 @@
 
 #: manufacturing/doctype/work_order/work_order.js:807
 msgid "Select the Item to be manufactured."
-msgstr ""
+msgstr "Wählen Sie den Artikel, der hergestellt werden soll."
 
 #: manufacturing/doctype/bom/bom.js:725
 msgid "Select the Item to be manufactured. The Item name, UoM, Company, and Currency will be fetched automatically."
-msgstr ""
+msgstr "Wählen Sie den Artikel, der hergestellt werden soll. Der Name des Artikels, die ME, das Unternehmen und die Währung werden automatisch abgerufen."
 
 #: manufacturing/doctype/production_plan/production_plan.js:294
 #: manufacturing/doctype/production_plan/production_plan.js:305
 msgid "Select the Warehouse"
-msgstr ""
+msgstr "Wählen Sie das Lager aus"
 
 #: accounts/doctype/bank_guarantee/bank_guarantee.py:47
 msgid "Select the customer or supplier."
@@ -63375,11 +63382,11 @@
 
 #: www/book_appointment/index.html:16
 msgid "Select the date and your timezone"
-msgstr ""
+msgstr "Wählen Sie das Datum und Ihre Zeitzone"
 
 #: manufacturing/doctype/bom/bom.js:740
 msgid "Select the raw materials (Items) required to manufacture the Item"
-msgstr ""
+msgstr "Wählen Sie die Rohstoffe (Artikel) aus, die zur Herstellung des Artikels benötigt werden"
 
 #: manufacturing/doctype/bom/bom.js:338
 msgid "Select variant item code for the template item {0}"
@@ -63546,13 +63553,13 @@
 #: buying/doctype/request_for_quotation/request_for_quotation.json
 msgctxt "Request for Quotation"
 msgid "Send Attached Files"
-msgstr ""
+msgstr "Angehängte Dateien senden"
 
 #. Label of a Check field in DocType 'Request for Quotation'
 #: buying/doctype/request_for_quotation/request_for_quotation.json
 msgctxt "Request for Quotation"
 msgid "Send Document Print"
-msgstr ""
+msgstr "Ausdruck der Anfrage senden"
 
 #. Label of a Check field in DocType 'Request for Quotation Supplier'
 #: buying/doctype/request_for_quotation_supplier/request_for_quotation_supplier.json
@@ -63562,7 +63569,7 @@
 
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.js:11
 msgid "Send Emails"
-msgstr ""
+msgstr "E-Mails senden"
 
 #: buying/doctype/request_for_quotation/request_for_quotation.js:46
 msgid "Send Emails to Suppliers"
@@ -63661,19 +63668,19 @@
 #: telephony/doctype/incoming_call_settings/incoming_call_settings.json
 msgctxt "Incoming Call Settings"
 msgid "Sequential"
-msgstr ""
+msgstr "Sequentiell"
 
 #. Label of a Tab Break field in DocType 'Stock Settings'
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "Serial & Batch Item"
-msgstr ""
+msgstr "Serien- und Chargenartikel"
 
 #. Label of a Section Break field in DocType 'Stock Settings'
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "Serial & Batch Item Settings"
-msgstr ""
+msgstr "Einstellungen für Serien- und Chargenartikel"
 
 #. Label of a Link field in DocType 'Stock Reconciliation Item'
 #: stock/doctype/stock_reconciliation_item/stock_reconciliation_item.json
@@ -63695,7 +63702,7 @@
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
 msgctxt "Serial and Batch Bundle"
 msgid "Serial / Batch No"
-msgstr ""
+msgstr "Serien-/Chargennr"
 
 #: public/js/utils.js:124
 msgid "Serial / Batch Nos"
@@ -63918,7 +63925,7 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py:577
 msgid "Serial No is mandatory"
-msgstr ""
+msgstr "Seriennummer ist obligatorisch"
 
 #: selling/doctype/installation_note/installation_note.py:76
 msgid "Serial No is mandatory for Item {0}"
@@ -63926,11 +63933,11 @@
 
 #: public/js/utils/serial_no_batch_selector.js:480
 msgid "Serial No {0} already exists"
-msgstr ""
+msgstr "Die Seriennummer {0} existiert bereits"
 
 #: public/js/utils/barcode_scanner.js:311
 msgid "Serial No {0} already scanned"
-msgstr ""
+msgstr "Seriennummer {0} bereits gescannt"
 
 #: selling/doctype/installation_note/installation_note.py:93
 msgid "Serial No {0} does not belong to Delivery Note {1}"
@@ -63951,12 +63958,12 @@
 
 #: public/js/utils/barcode_scanner.js:402
 msgid "Serial No {0} has already scanned."
-msgstr ""
+msgstr "Seriennummer {0} wurde bereits gescannt."
 
 #: public/js/utils/barcode_scanner.js:499
 #: public/js/utils/barcode_scanner.js:506
 msgid "Serial No {0} is already added"
-msgstr ""
+msgstr "Die Seriennummer {0} ist bereits hinzugefügt"
 
 #: maintenance/doctype/maintenance_schedule/maintenance_schedule.py:341
 msgid "Serial No {0} is under maintenance contract upto {1}"
@@ -63979,16 +63986,16 @@
 #: public/js/utils/serial_no_batch_selector.js:178
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.js:48
 msgid "Serial Nos"
-msgstr ""
+msgstr "Seriennummern"
 
 #: public/js/utils/serial_no_batch_selector.js:20
 #: public/js/utils/serial_no_batch_selector.js:183
 msgid "Serial Nos / Batch Nos"
-msgstr ""
+msgstr "Serien-/Chargennummern"
 
 #: accounts/doctype/sales_invoice/sales_invoice.py:1692
 msgid "Serial Nos Mismatch"
-msgstr ""
+msgstr "Seriennummern stimmen nicht überein"
 
 #. Label of a Section Break field in DocType 'Item'
 #: stock/doctype/item/item.json
@@ -63998,11 +64005,11 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py:1074
 msgid "Serial Nos are created successfully"
-msgstr ""
+msgstr "Seriennummern wurden erfolgreich erstellt"
 
 #: stock/stock_ledger.py:1972
 msgid "Serial Nos are reserved in Stock Reservation Entries, you need to unreserve them before proceeding."
-msgstr ""
+msgstr "Seriennummern sind bereits reserviert. Sie müssen die Reservierung aufheben, bevor Sie fortfahren."
 
 #. Label of a Data field in DocType 'Item'
 #: stock/doctype/item/item.json
@@ -64014,14 +64021,14 @@
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
 msgctxt "Serial and Batch Bundle"
 msgid "Serial and Batch"
-msgstr ""
+msgstr "Seriennummer und Charge"
 
 #. Option for the 'Reservation Based On' (Select) field in DocType 'Stock
 #. Reservation Entry'
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.json
 msgctxt "Stock Reservation Entry"
 msgid "Serial and Batch"
-msgstr ""
+msgstr "Seriennummer und Charge"
 
 #. Name of a DocType
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
@@ -64667,13 +64674,13 @@
 #: accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
 msgctxt "Currency Exchange Settings"
 msgid "Service Provider"
-msgstr ""
+msgstr "Anbieter"
 
 #. Label of a Data field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Service Provider"
-msgstr ""
+msgstr "Anbieter"
 
 #. Option for the 'Account Type' (Select) field in DocType 'Account'
 #: accounts/doctype/account/account.json
@@ -64762,7 +64769,7 @@
 
 #: buying/report/supplier_quotation_comparison/supplier_quotation_comparison.js:150
 msgid "Set Default Supplier"
-msgstr ""
+msgstr "Standard-Lieferant festlegen"
 
 #. Label of a Button field in DocType 'Payment Entry'
 #: accounts/doctype/payment_entry/payment_entry.json
@@ -64835,7 +64842,7 @@
 #: projects/doctype/project/project.js:118
 #: projects/doctype/project/project.js:132
 msgid "Set Project Status"
-msgstr ""
+msgstr "Projektstatus festlegen"
 
 #: projects/doctype/project/project.js:154
 msgid "Set Project and all Tasks to status {0}?"
@@ -64923,7 +64930,7 @@
 
 #: selling/doctype/sales_order/sales_order.js:184
 msgid "Set Warehouse"
-msgstr ""
+msgstr "Lager festlegen"
 
 #: crm/doctype/opportunity/opportunity_list.js:17
 #: support/doctype/issue/issue_list.js:12
@@ -65258,13 +65265,13 @@
 #: stock/doctype/delivery_note/delivery_note.js:166
 #: stock/doctype/shipment/shipment.json
 msgid "Shipment"
-msgstr ""
+msgstr "Sendung"
 
 #. Linked DocType in Incoterm's connections
 #: setup/doctype/incoterm/incoterm.json
 msgctxt "Incoterm"
 msgid "Shipment"
-msgstr ""
+msgstr "Sendung"
 
 #. Label of a Currency field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
@@ -65275,53 +65282,53 @@
 #. Name of a DocType
 #: stock/doctype/shipment_delivery_note/shipment_delivery_note.json
 msgid "Shipment Delivery Note"
-msgstr ""
+msgstr "Lieferschein für die Sendung"
 
 #. Label of a Table field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment Delivery Note"
-msgstr ""
+msgstr "Lieferschein für die Sendung"
 
 #. Label of a Data field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment ID"
-msgstr ""
+msgstr "Sendungs-ID"
 
 #. Label of a Section Break field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment Information"
-msgstr ""
+msgstr "Sendungsinformationen"
 
 #. Name of a DocType
 #: stock/doctype/shipment_parcel/shipment_parcel.json
 msgid "Shipment Parcel"
-msgstr ""
+msgstr "Versandpaket"
 
 #. Label of a Table field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment Parcel"
-msgstr ""
+msgstr "Versandpaket"
 
 #. Name of a DocType
 #: stock/doctype/shipment_parcel_template/shipment_parcel_template.json
 msgid "Shipment Parcel Template"
-msgstr ""
+msgstr "Versandpaketvorlage"
 
 #. Label of a Select field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment Type"
-msgstr ""
+msgstr "Sendungstyp"
 
 #. Label of a Section Break field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Shipment details"
-msgstr ""
+msgstr "Sendungsdetails"
 
 #: stock/doctype/delivery_note/delivery_note.py:846
 msgid "Shipments"
@@ -65417,19 +65424,19 @@
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Shipping Address Details"
-msgstr ""
+msgstr "Lieferadressendetails"
 
 #. Label of a Small Text field in DocType 'Subcontracting Order'
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.json
 msgctxt "Subcontracting Order"
 msgid "Shipping Address Details"
-msgstr ""
+msgstr "Lieferadressendetails"
 
 #. Label of a Small Text field in DocType 'Supplier Quotation'
 #: buying/doctype/supplier_quotation/supplier_quotation.json
 msgctxt "Supplier Quotation"
 msgid "Shipping Address Details"
-msgstr ""
+msgstr "Lieferadressendetails"
 
 #. Label of a Link field in DocType 'POS Invoice'
 #: accounts/doctype/pos_invoice/pos_invoice.json
@@ -65453,7 +65460,7 @@
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "Shipping Address Template"
-msgstr ""
+msgstr "Vorlage Lieferadresse"
 
 #: accounts/doctype/shipping_rule/shipping_rule.py:130
 msgid "Shipping Address does not have country, which is required for this Shipping Rule"
@@ -65838,7 +65845,7 @@
 
 #: stock/utils.py:588
 msgid "Show pending entries"
-msgstr ""
+msgstr "Ausstehende Einträge anzeigen"
 
 #: accounts/report/trial_balance/trial_balance.js:93
 msgid "Show unclosed fiscal year's P&L balances"
@@ -66282,7 +66289,7 @@
 #: accounts/doctype/dunning/dunning.json
 msgctxt "Dunning"
 msgid "Spacer"
-msgstr ""
+msgstr "Abstandshalter"
 
 #: assets/doctype/asset/asset.js:467 stock/doctype/batch/batch.js:143
 #: support/doctype/issue/issue.js:100
@@ -66295,7 +66302,7 @@
 
 #: stock/doctype/batch/batch.js:142
 msgid "Split Batch"
-msgstr ""
+msgstr "Charge aufteilen"
 
 #. Description of the 'Book Tax Loss on Early Payment Discount' (Check) field
 #. in DocType 'Accounts Settings'
@@ -68160,19 +68167,19 @@
 #: manufacturing/doctype/production_plan_sub_assembly_item/production_plan_sub_assembly_item.json
 msgctxt "Production Plan Sub Assembly Item"
 msgid "Sub Assembly Item Code"
-msgstr ""
+msgstr "Artikelcode der Unterbaugruppe"
 
 #. Label of a Section Break field in DocType 'Production Plan'
 #: manufacturing/doctype/production_plan/production_plan.json
 msgctxt "Production Plan"
 msgid "Sub Assembly Items"
-msgstr ""
+msgstr "Artikel der Unterbaugruppe"
 
 #. Label of a Link field in DocType 'Production Plan'
 #: manufacturing/doctype/production_plan/production_plan.json
 msgctxt "Production Plan"
 msgid "Sub Assembly Warehouse"
-msgstr ""
+msgstr "Unterbaugruppe Lager"
 
 #. Name of a DocType
 #: manufacturing/doctype/sub_operation/sub_operation.json
@@ -68222,14 +68229,14 @@
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "Subcontract BOM"
-msgstr ""
+msgstr "Stückliste für Unterauftragnehmer"
 
 #: buying/report/subcontract_order_summary/subcontract_order_summary.js:37
 #: buying/report/subcontract_order_summary/subcontract_order_summary.py:128
 #: buying/report/subcontracted_item_to_be_received/subcontracted_item_to_be_received.py:22
 #: buying/report/subcontracted_raw_materials_to_be_transferred/subcontracted_raw_materials_to_be_transferred.py:22
 msgid "Subcontract Order"
-msgstr ""
+msgstr "Unterauftrag"
 
 #. Name of a report
 #: buying/report/subcontract_order_summary/subcontract_order_summary.json
@@ -68302,7 +68309,7 @@
 #: buying/doctype/buying_settings/buying_settings.json
 msgctxt "Buying Settings"
 msgid "Subcontracting Order (Draft) will be auto-created on submission of Purchase Order."
-msgstr ""
+msgstr "Unterauftrag (Entwurf) wird automatisch bei der Buchung der Lieferantenbestellung erstellt."
 
 #. Name of a DocType
 #: subcontracting/doctype/subcontracting_order_item/subcontracting_order_item.json
@@ -68339,20 +68346,20 @@
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.js:188
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
 msgid "Subcontracting Receipt"
-msgstr ""
+msgstr "Unterauftragsbeleg"
 
 #. Label of a Link field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "Subcontracting Receipt"
-msgstr ""
+msgstr "Unterauftragsbeleg"
 
 #. Option for the 'Reference Type' (Select) field in DocType 'Quality
 #. Inspection'
 #: stock/doctype/quality_inspection/quality_inspection.json
 msgctxt "Quality Inspection"
 msgid "Subcontracting Receipt"
-msgstr ""
+msgstr "Unterauftragsbeleg"
 
 #. Name of a DocType
 #: subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
@@ -69580,7 +69587,7 @@
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "Supplier Portal Users"
-msgstr ""
+msgstr "Benutzer des Lieferantenportals"
 
 #. Label of a Link field in DocType 'Supplier'
 #: buying/doctype/supplier/supplier.json
@@ -69820,7 +69827,7 @@
 #: setup/setup_wizard/operations/install_fixtures.py:251
 #: support/workspace/support/support.json
 msgid "Support"
-msgstr ""
+msgstr "Hilfe"
 
 #. Name of a report
 #: support/report/support_hour_distribution/support_hour_distribution.json
@@ -69882,7 +69889,7 @@
 
 #: erpnext_integrations/doctype/plaid_settings/plaid_settings.js:31
 msgid "Sync Started"
-msgstr ""
+msgstr "Synchronisierung gestartet"
 
 #. Label of a Check field in DocType 'Plaid Settings'
 #: erpnext_integrations/doctype/plaid_settings/plaid_settings.json
@@ -71906,12 +71913,12 @@
 #. Success message of the Module Onboarding 'Buying'
 #: buying/module_onboarding/buying/buying.json
 msgid "The Buying Module is all set up!"
-msgstr ""
+msgstr "Das Einkaufsmodul ist fertig eingerichtet!"
 
 #. Success message of the Module Onboarding 'CRM'
 #: crm/module_onboarding/crm/crm.json
 msgid "The CRM Module is all set up!"
-msgstr ""
+msgstr "Das CRM-Modul ist fertig eingerichtet!"
 
 #: crm/doctype/email_campaign/email_campaign.py:71
 msgid "The Campaign '{0}' already exists for the {1} '{2}'"
@@ -71927,11 +71934,11 @@
 
 #: accounts/doctype/period_closing_voucher/period_closing_voucher.py:70
 msgid "The GL Entries will be cancelled in the background, it can take a few minutes."
-msgstr ""
+msgstr "Die Hauptbucheinträge werden im Hintergrund storniert, dies kann einige Minuten dauern."
 
 #: accounts/doctype/period_closing_voucher/period_closing_voucher.py:176
 msgid "The GL Entries will be processed in the background, it can take a few minutes."
-msgstr ""
+msgstr "Die Hauptbucheinträge werden im Hintergrund verarbeitet, dies kann einige Minuten dauern."
 
 #: accounts/doctype/loyalty_program/loyalty_program.py:163
 msgid "The Loyalty Program isn't valid for the selected company"
@@ -71956,7 +71963,7 @@
 #. Success message of the Module Onboarding 'Selling'
 #: selling/module_onboarding/selling/selling.json
 msgid "The Selling Module is all set up!"
-msgstr ""
+msgstr "Das Vertriebsmodul ist fertig eingerichtet!"
 
 #: manufacturing/doctype/manufacturing_settings/manufacturing_settings.js:16
 msgid "The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field."
@@ -71965,7 +71972,7 @@
 #. Success message of the Module Onboarding 'Stock'
 #: stock/module_onboarding/stock/stock.json
 msgid "The Stock Module is all set up!"
-msgstr ""
+msgstr "Das Lagermodul ist fertig eingerichtet!"
 
 #. Description of the 'Closing Account Head' (Link) field in DocType 'Period
 #. Closing Voucher'
@@ -71987,11 +71994,11 @@
 
 #: accounts/doctype/dunning/dunning.py:86
 msgid "The currency of invoice {} ({}) is different from the currency of this dunning ({})."
-msgstr ""
+msgstr "Die Währung der Rechnung {} ({}) unterscheidet sich von der Währung dieser Mahnung ({})."
 
 #: manufacturing/doctype/work_order/work_order.js:812
 msgid "The default BOM for that item will be fetched by the system. You can also change the BOM."
-msgstr ""
+msgstr "Die Standardstückliste für diesen Artikel wird vom System abgerufen. Sie können die Stückliste auch ändern."
 
 #: crm/doctype/appointment_booking_settings/appointment_booking_settings.py:69
 msgid "The difference between from time and To Time must be a multiple of Appointment"
@@ -72024,7 +72031,7 @@
 
 #: stock/doctype/putaway_rule/putaway_rule.py:292
 msgid "The following Items, having Putaway Rules, could not be accomodated:"
-msgstr ""
+msgstr "Die folgenden Artikel, für die Einlagerungsregeln gelten, konnten nicht untergebracht werden:"
 
 #: assets/doctype/asset/depreciation.py:414
 msgid "The following assets have failed to automatically post depreciation entries: {0}"
@@ -75294,7 +75301,7 @@
 
 #: assets/doctype/asset_movement/asset_movement.py:76
 msgid "Transferring cannot be done to an Employee. Please enter location where Asset {0} has to be transferred"
-msgstr ""
+msgstr "Die Übertragung kann nicht an einen Mitarbeiter erfolgen. Bitte geben Sie den Ort ein, an den der Vermögensgegenstand {0} übertragen werden soll."
 
 #. Label of a Section Break field in DocType 'Warehouse'
 #: stock/doctype/warehouse/warehouse.json
@@ -76420,7 +76427,7 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:17
 msgid "Up"
-msgstr ""
+msgstr "Hoch"
 
 #. Label of a Check field in DocType 'Email Digest'
 #: setup/doctype/email_digest/email_digest.json
diff --git a/erpnext/locale/es.po b/erpnext/locale/es.po
index 17a7762..a99d9f5 100644
--- a/erpnext/locale/es.po
+++ b/erpnext/locale/es.po
@@ -3,7 +3,7 @@
 "Project-Id-Version: frappe\n"
 "Report-Msgid-Bugs-To: info@erpnext.com\n"
 "POT-Creation-Date: 2024-01-29 18:13+0053\n"
-"PO-Revision-Date: 2024-02-02 12:58\n"
+"PO-Revision-Date: 2024-03-05 14:17\n"
 "Last-Translator: info@erpnext.com\n"
 "Language-Team: Spanish\n"
 "MIME-Version: 1.0\n"
@@ -30,35 +30,35 @@
 
 #: selling/doctype/quotation/quotation.js:76
 msgid " Address"
-msgstr ""
+msgstr " Dirección"
 
 #: accounts/report/item_wise_sales_register/item_wise_sales_register.py:612
 msgid " Amount"
-msgstr ""
+msgstr " Importe"
 
 #. Label of a Check field in DocType 'Inventory Dimension'
 #: stock/doctype/inventory_dimension/inventory_dimension.json
 msgctxt "Inventory Dimension"
 msgid " Is Child Table"
-msgstr ""
+msgstr " Es una tabla secundaria"
 
 #: accounts/report/tax_withholding_details/tax_withholding_details.py:186
 #: accounts/report/tds_computation_summary/tds_computation_summary.py:107
 #: selling/report/sales_analytics/sales_analytics.py:66
 msgid " Name"
-msgstr ""
+msgstr " Nombre"
 
 #: public/js/bom_configurator/bom_configurator.bundle.js:108
 msgid " Qty"
-msgstr ""
+msgstr " Cant"
 
 #: accounts/report/item_wise_sales_register/item_wise_sales_register.py:603
 msgid " Rate"
-msgstr ""
+msgstr " Precio"
 
 #: public/js/bom_configurator/bom_configurator.bundle.js:116
 msgid " Raw Material"
-msgstr ""
+msgstr " Materia Prima"
 
 #: public/js/bom_configurator/bom_configurator.bundle.js:127
 #: public/js/bom_configurator/bom_configurator.bundle.js:157
@@ -67,7 +67,7 @@
 
 #: projects/doctype/project_update/project_update.py:110
 msgid " Summary"
-msgstr ""
+msgstr " Resumen"
 
 #: stock/doctype/item/item.py:235
 msgid "\"Customer Provided Item\" cannot be Purchase Item also"
@@ -154,7 +154,12 @@
 "- Lead\n"
 "- Opportunity\n"
 "- Quotation"
-msgstr ""
+msgstr "# Configuración de CRM\n\n"
+"Las funciones del módulo CRM se pueden configurar según las necesidades de su negocio. Configuración de CRM es el lugar donde puede establecer sus preferencias para:\n"
+"- Campaña\n"
+"- Cliente potencial\n"
+"- Oportunidad\n"
+"- Cotización"
 
 #. Description of the Onboarding Step 'Review Chart of Accounts'
 #: accounts/onboarding_step/chart_of_accounts/chart_of_accounts.json
@@ -210,7 +215,12 @@
 " - Customer’s multiple address and contacts\n"
 " - Account Receivables\n"
 " - Credit Limit and Credit Period\n"
-msgstr ""
+msgstr "# Crear un cliente\n\n"
+"El Maestro de Clientes es el corazón de sus transacciones de venta. Los Clientes están vinculados en Cotizaciones, Pedidos de Venta, Facturas y Pagos. Los Clientes pueden estar numerados o identificados por su nombre (normalmente lo hará en función del número de clientes que tenga).\n\n"
+"A través del Maestro de Clientes, usted puede rastrear efectivamente elementos esenciales como:\n"
+" - Dirección y contactos múltiples del cliente\n"
+" - Cuentas por cobrar\n"
+" - Límite de crédito y Período de crédito\n"
 
 #. Description of the Onboarding Step 'Setup Your Letterhead'
 #: setup/onboarding_step/letterhead/letterhead.json
@@ -268,7 +278,8 @@
 #: buying/onboarding_step/create_your_first_purchase_order/create_your_first_purchase_order.json
 msgid "# Create first Purchase Order\n\n"
 "Purchase Order is at the heart of your buying transactions. In ERPNext, Purchase Order can can be created against a Purchase Material Request (indent) and Supplier Quotation as well.  Purchase Orders is also linked to Purchase Receipt and Purchase Invoices, allowing you to keep a birds-eye view on your purchase deals.\n\n"
-msgstr ""
+msgstr "# Crear la primera Orden de Compra\n\n"
+"La Orden de Compra es el corazon de sus transacciones de compra. En ERPNext, la Orden de Compra se puede crear contra una Solicitud de Material de Compra (sangría) y también una Cotización del Proveedor. Las Órdenes de Compra también están vinculadas al Recibo de Compra y a las Facturas de Compra, lo que le permite tener una vista panorámica de sus ofertas de compra.\n\n"
 
 #. Description of the Onboarding Step 'Create Your First Purchase Invoice '
 #: accounts/onboarding_step/create_your_first_purchase_invoice/create_your_first_purchase_invoice.json
@@ -454,37 +465,37 @@
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "%  Delivered"
-msgstr ""
+msgstr "%  Entregado"
 
 #. Label of a Percent field in DocType 'Delivery Note'
 #: stock/doctype/delivery_note/delivery_note.json
 msgctxt "Delivery Note"
 msgid "% Amount Billed"
-msgstr ""
+msgstr "% Importe Facturado"
 
 #. Label of a Percent field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "% Amount Billed"
-msgstr ""
+msgstr "% Importe Facturado"
 
 #. Label of a Percent field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "% Amount Billed"
-msgstr ""
+msgstr "% Importe Facturado"
 
 #. Label of a Percent field in DocType 'Timesheet'
 #: projects/doctype/timesheet/timesheet.json
 msgctxt "Timesheet"
 msgid "% Amount Billed"
-msgstr ""
+msgstr "% Importe Facturado"
 
 #. Label of a Percent field in DocType 'Purchase Order'
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "% Billed"
-msgstr ""
+msgstr "% Facturado"
 
 #. Label of a Select field in DocType 'Project'
 #: projects/doctype/project/project.json
@@ -496,7 +507,7 @@
 #: projects/doctype/project/project.json
 msgctxt "Project"
 msgid "% Completed"
-msgstr ""
+msgstr "% Completado"
 
 #: manufacturing/doctype/bom/bom.js:755
 #, python-format
@@ -932,7 +943,7 @@
 
 #: manufacturing/report/work_order_summary/work_order_summary.py:110
 msgid "60-90 Days"
-msgstr ""
+msgstr "60-90 días"
 
 #: accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.py:121
 #: manufacturing/report/work_order_summary/work_order_summary.py:110
@@ -1063,7 +1074,7 @@
 #: accounts/doctype/bank_statement_import/bank_statement_import.json
 msgctxt "Bank Statement Import"
 msgid "<h5 class=\"text-muted uppercase\">Or</h5>"
-msgstr ""
+msgstr "<h5 class=\"text-muted uppercase\">O</h5>"
 
 #. Content of the 'account_no_settings' (HTML) field in DocType 'Cheque Print
 #. Template'
@@ -1252,7 +1263,7 @@
 #: accounts/doctype/cheque_print_template/cheque_print_template.json
 msgctxt "Cheque Print Template"
 msgid "A4"
-msgstr ""
+msgstr "A4"
 
 #. Option for the 'Blood Group' (Select) field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
@@ -2071,7 +2082,7 @@
 
 #: assets/doctype/asset/asset.py:677
 msgid "Account not Found"
-msgstr ""
+msgstr "Cuenta no encontrada"
 
 #: accounts/doctype/account/account.py:360
 msgid "Account with child nodes cannot be converted to ledger"
@@ -2096,7 +2107,7 @@
 
 #: accounts/doctype/tax_withholding_category/tax_withholding_category.py:54
 msgid "Account {0} added multiple times"
-msgstr ""
+msgstr "Cuenta {0} agregada varias veces"
 
 #: setup/doctype/company/company.py:187
 msgid "Account {0} does not belong to company: {1}"
@@ -2168,7 +2179,7 @@
 
 #: accounts/report/general_ledger/general_ledger.py:325
 msgid "Account: {0} does not exist"
-msgstr ""
+msgstr "Cuenta {0} no existe"
 
 #: accounts/doctype/payment_entry/payment_entry.py:2098
 msgid "Account: {0} is not permitted under Payment Entry"
@@ -3123,12 +3134,12 @@
 #: accounts/doctype/ledger_merge/ledger_merge.json
 msgctxt "Ledger Merge"
 msgid "Accounts to Merge"
-msgstr ""
+msgstr "Cuentas a fusionar"
 
 #. Subtitle of the Module Onboarding 'Accounts'
 #: accounts/module_onboarding/accounts/accounts.json
 msgid "Accounts, Invoices, Taxation, and more."
-msgstr ""
+msgstr "Cuentas, Facturas, Impuestos y más."
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:33
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:46
@@ -3763,7 +3774,7 @@
 #: accounts/doctype/repost_payment_ledger/repost_payment_ledger.json
 msgctxt "Repost Payment Ledger"
 msgid "Add Manually"
-msgstr ""
+msgstr "Añadir manualmente"
 
 #: projects/doctype/task/task_tree.js:42
 msgid "Add Multiple"
@@ -3777,7 +3788,7 @@
 #: accounts/doctype/advance_taxes_and_charges/advance_taxes_and_charges.json
 msgctxt "Advance Taxes and Charges"
 msgid "Add Or Deduct"
-msgstr ""
+msgstr "Añadir o deducir"
 
 #: selling/page/point_of_sale/pos_item_cart.js:269
 msgid "Add Order Discount"
@@ -3802,31 +3813,31 @@
 #: accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
 msgctxt "Purchase Invoice Item"
 msgid "Add Serial / Batch No"
-msgstr ""
+msgstr "Añadir Nro Serie/Lote"
 
 #. Label of a Button field in DocType 'Purchase Receipt Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "Add Serial / Batch No"
-msgstr ""
+msgstr "Añadir Nro Serie/Lote"
 
 #. Label of a Button field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
 msgctxt "Stock Entry Detail"
 msgid "Add Serial / Batch No"
-msgstr ""
+msgstr "Añadir Nro Serie/Lote"
 
 #. Label of a Button field in DocType 'Stock Reconciliation Item'
 #: stock/doctype/stock_reconciliation_item/stock_reconciliation_item.json
 msgctxt "Stock Reconciliation Item"
 msgid "Add Serial / Batch No"
-msgstr ""
+msgstr "Añadir Nro Serie/Lote"
 
 #. Label of a Button field in DocType 'Purchase Receipt Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "Add Serial / Batch No (Rejected Qty)"
-msgstr ""
+msgstr "Añadir Nro Serie/Lote (Cant Rechazada)"
 
 #: public/js/utils.js:61
 msgid "Add Serial No"
@@ -3860,7 +3871,7 @@
 
 #: public/js/utils/crm_activities.js:140
 msgid "Add a Note"
-msgstr ""
+msgstr "Añadir Nota"
 
 #. Title of an Onboarding Step
 #: assets/onboarding_step/existing_asset/existing_asset.json
@@ -3874,7 +3885,7 @@
 
 #: www/book_appointment/index.html:42
 msgid "Add details"
-msgstr ""
+msgstr "Añadir detalles"
 
 #: stock/doctype/pick_list/pick_list.js:71
 #: stock/doctype/pick_list/pick_list.py:614
@@ -3921,13 +3932,13 @@
 #: crm/doctype/crm_note/crm_note.json
 msgctxt "CRM Note"
 msgid "Added By"
-msgstr ""
+msgstr "Añadido por"
 
 #. Label of a Datetime field in DocType 'CRM Note'
 #: crm/doctype/crm_note/crm_note.json
 msgctxt "CRM Note"
 msgid "Added On"
-msgstr ""
+msgstr "Añadido el"
 
 #: buying/doctype/supplier/supplier.py:130
 msgid "Added Supplier Role to User {0}."
@@ -4228,49 +4239,49 @@
 #: stock/doctype/delivery_note/delivery_note.json
 msgctxt "Delivery Note"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Purchase Invoice'
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
 msgctxt "Purchase Invoice"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Purchase Order'
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
 msgctxt "Quotation"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Sales Invoice'
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Supplier Quotation'
 #: buying/doctype/supplier_quotation/supplier_quotation.json
 msgctxt "Supplier Quotation"
 msgid "Additional Info"
-msgstr ""
+msgstr "Información Adicional"
 
 #. Label of a Section Break field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
@@ -4522,7 +4533,7 @@
 #: accounts/workspace/financial_reports/financial_reports.json
 #: selling/report/address_and_contacts/address_and_contacts.json
 msgid "Address And Contacts"
-msgstr ""
+msgstr "Dirección y Contactos"
 
 #. Label of a HTML field in DocType 'Sales Partner'
 #: setup/doctype/sales_partner/sales_partner.json
@@ -5087,7 +5098,7 @@
 
 #: stock/report/stock_ageing/stock_ageing.py:205
 msgid "Age ({0})"
-msgstr ""
+msgstr "Edad ({0})"
 
 #: accounts/report/accounts_payable/accounts_payable.js:58
 #: accounts/report/accounts_payable_summary/accounts_payable_summary.js:21
@@ -5142,13 +5153,13 @@
 #: quality_management/doctype/quality_meeting/quality_meeting.json
 msgctxt "Quality Meeting"
 msgid "Agenda"
-msgstr ""
+msgstr "Agenda"
 
 #. Label of a Text Editor field in DocType 'Quality Meeting Agenda'
 #: quality_management/doctype/quality_meeting_agenda/quality_meeting_agenda.json
 msgctxt "Quality Meeting Agenda"
 msgid "Agenda"
-msgstr ""
+msgstr "Agenda"
 
 #. Label of a Data field in DocType 'Incoming Call Settings'
 #: telephony/doctype/incoming_call_settings/incoming_call_settings.json
@@ -5206,7 +5217,7 @@
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Algorithm"
-msgstr ""
+msgstr "Algoritmo"
 
 #. Name of a role
 #: accounts/doctype/pos_invoice/pos_invoice.json
@@ -5234,19 +5245,19 @@
 #: crm/doctype/lead/lead.json
 msgctxt "Lead"
 msgid "All Activities"
-msgstr ""
+msgstr "Todas las Actividades"
 
 #. Label of a Section Break field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "All Activities"
-msgstr ""
+msgstr "Todas las Actividades"
 
 #. Label of a Section Break field in DocType 'Prospect'
 #: crm/doctype/prospect/prospect.json
 msgctxt "Prospect"
 msgid "All Activities"
-msgstr ""
+msgstr "Todas las Actividades"
 
 #. Label of a HTML field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
@@ -5737,7 +5748,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "Allow Purchase"
-msgstr ""
+msgstr "Permitir Compra"
 
 #. Label of a Check field in DocType 'Supplier'
 #: buying/doctype/supplier/supplier.json
@@ -5771,7 +5782,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "Allow Sales"
-msgstr ""
+msgstr "Permitir Ventas"
 
 #. Label of a Check field in DocType 'Customer'
 #: selling/doctype/customer/customer.json
@@ -5916,13 +5927,13 @@
 #: selling/doctype/customer/customer.json
 msgctxt "Customer"
 msgid "Allowed Items"
-msgstr ""
+msgstr "Productos Permitidos"
 
 #. Group in Supplier's connections
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "Allowed Items"
-msgstr ""
+msgstr "Productos Permitidos"
 
 #. Name of a DocType
 #: accounts/doctype/allowed_to_transact_with/allowed_to_transact_with.json
@@ -7753,31 +7764,31 @@
 #: assets/report/asset_activity/asset_activity.json
 #: assets/workspace/assets/assets.json
 msgid "Asset Activity"
-msgstr ""
+msgstr "Actividad de Activos"
 
 #. Linked DocType in Asset's connections
 #: assets/doctype/asset/asset.json
 msgctxt "Asset"
 msgid "Asset Activity"
-msgstr ""
+msgstr "Actividad de Activos"
 
 #. Name of a DocType
 #: assets/doctype/asset_capitalization/asset_capitalization.json
 msgid "Asset Capitalization"
-msgstr ""
+msgstr "Capitalización de Activos"
 
 #. Group in Asset's connections
 #. Linked DocType in Asset's connections
 #: assets/doctype/asset/asset.json
 msgctxt "Asset"
 msgid "Asset Capitalization"
-msgstr ""
+msgstr "Capitalización de Activos"
 
 #. Label of a Link in the Assets Workspace
 #: assets/workspace/assets/assets.json
 msgctxt "Asset Capitalization"
 msgid "Asset Capitalization"
-msgstr ""
+msgstr "Capitalización de Activos"
 
 #. Name of a DocType
 #: assets/doctype/asset_capitalization_asset_item/asset_capitalization_asset_item.json
@@ -8146,7 +8157,7 @@
 #: accounts/doctype/accounts_settings/accounts_settings.json
 msgctxt "Accounts Settings"
 msgid "Asset Settings"
-msgstr ""
+msgstr "Configuración de Activos"
 
 #. Name of a DocType
 #: assets/doctype/asset_shift_allocation/asset_shift_allocation.json
@@ -8564,7 +8575,7 @@
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
 #: regional/doctype/south_africa_vat_settings/south_africa_vat_settings.json
 msgid "Auditor"
-msgstr ""
+msgstr "Auditor"
 
 #: erpnext_integrations/doctype/plaid_settings/plaid_connector.py:68
 #: erpnext_integrations/doctype/plaid_settings/plaid_connector.py:85
@@ -8954,7 +8965,7 @@
 #: buying/doctype/purchase_order_item/purchase_order_item.json
 msgctxt "Purchase Order Item"
 msgid "Available Qty at Company"
-msgstr ""
+msgstr "Cant. disponible en Compañía"
 
 #. Label of a Float field in DocType 'Delivery Note Item'
 #: stock/doctype/delivery_note_item/delivery_note_item.json
@@ -9136,73 +9147,73 @@
 #: stock/doctype/stock_entry/stock_entry.js:545
 #: stock/report/bom_search/bom_search.py:38
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a shortcut in the Manufacturing Workspace
 #: manufacturing/workspace/manufacturing/manufacturing.json
 msgctxt "BOM"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Linked DocType in BOM Creator's connections
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgctxt "BOM Creator"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Option for the 'Backflush Raw Materials of Subcontract Based On' (Select)
 #. field in DocType 'Buying Settings'
 #: buying/doctype/buying_settings/buying_settings.json
 msgctxt "Buying Settings"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Option for the 'Backflush Raw Materials Based On' (Select) field in DocType
 #. 'Manufacturing Settings'
 #: manufacturing/doctype/manufacturing_settings/manufacturing_settings.json
 msgctxt "Manufacturing Settings"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Purchase Invoice Item'
 #: accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
 msgctxt "Purchase Invoice Item"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Purchase Order Item'
 #: buying/doctype/purchase_order_item/purchase_order_item.json
 msgctxt "Purchase Order Item"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Purchase Receipt Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Subcontracting Order Item'
 #: subcontracting/doctype/subcontracting_order_item/subcontracting_order_item.json
 msgctxt "Subcontracting Order Item"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Subcontracting Receipt Item'
 #: subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
 msgctxt "Subcontracting Receipt Item"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #. Label of a Link field in DocType 'Work Order Operation'
 #: manufacturing/doctype/work_order_operation/work_order_operation.json
 msgctxt "Work Order Operation"
 msgid "BOM"
-msgstr ""
+msgstr "LdM"
 
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:21
 msgid "BOM 1"
-msgstr ""
+msgstr "LdM 1"
 
 #: manufacturing/doctype/bom/bom.py:1348
 msgid "BOM 1 {0} and BOM 2 {1} should not be same"
@@ -9210,7 +9221,7 @@
 
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:38
 msgid "BOM 2"
-msgstr ""
+msgstr "LdM 2"
 
 #. Label of a Link in the Manufacturing Workspace
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:4
@@ -9222,24 +9233,24 @@
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
 msgctxt "BOM Creator Item"
 msgid "BOM Created"
-msgstr ""
+msgstr "LdM Creado"
 
 #. Name of a DocType
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgid "BOM Creator"
-msgstr ""
+msgstr "Creador LdM"
 
 #. Label of a Link field in DocType 'BOM'
 #: manufacturing/doctype/bom/bom.json
 msgctxt "BOM"
 msgid "BOM Creator"
-msgstr ""
+msgstr "Creador LdM"
 
 #. Label of a shortcut in the Manufacturing Workspace
 #: manufacturing/workspace/manufacturing/manufacturing.json
 msgctxt "BOM Creator"
 msgid "BOM Creator"
-msgstr ""
+msgstr "Creador LdM"
 
 #. Name of a DocType
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
@@ -9427,11 +9438,11 @@
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgctxt "BOM Creator"
 msgid "BOM Tree"
-msgstr ""
+msgstr "Árbol LdM"
 
 #: manufacturing/report/bom_stock_report/bom_stock_report.py:28
 msgid "BOM UoM"
-msgstr ""
+msgstr "LdM UdM"
 
 #. Name of a DocType
 #: manufacturing/doctype/bom_update_batch/bom_update_batch.json
@@ -10531,7 +10542,7 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py:2118
 msgid "Batch No {0} does not exists"
-msgstr ""
+msgstr "Lote núm. {0} no existe"
 
 #: stock/utils.py:643
 msgid "Batch No {0} is linked with Item {1} which has serial no. Please scan serial no instead."
@@ -11724,7 +11735,7 @@
 #: setup/doctype/company/company.json
 msgctxt "Company"
 msgid "Buying and Selling"
-msgstr ""
+msgstr "Compra y Venta"
 
 #: accounts/doctype/pricing_rule/pricing_rule.py:211
 msgid "Buying must be checked, if Applicable For is selected as {0}"
@@ -11776,7 +11787,7 @@
 #. Label of a Card Break in the Home Workspace
 #: crm/workspace/crm/crm.json setup/workspace/home/home.json
 msgid "CRM"
-msgstr ""
+msgstr "CRM"
 
 #. Name of a DocType
 #: crm/doctype/crm_note/crm_note.json
@@ -11788,14 +11799,14 @@
 #: crm/doctype/crm_settings/crm_settings.json
 #: crm/onboarding_step/crm_settings/crm_settings.json
 msgid "CRM Settings"
-msgstr ""
+msgstr "Configuración CRM"
 
 #. Label of a Link in the CRM Workspace
 #. Label of a Link in the Settings Workspace
 #: crm/workspace/crm/crm.json setup/workspace/settings/settings.json
 msgctxt "CRM Settings"
 msgid "CRM Settings"
-msgstr ""
+msgstr "Configuración CRM"
 
 #. Option for the 'Series' (Select) field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
@@ -11869,7 +11880,7 @@
 
 #: telephony/doctype/call_log/call_log.js:8
 msgid "Call Again"
-msgstr ""
+msgstr "Volver a llamar"
 
 #: public/js/call_popup/call_popup.js:41
 msgid "Call Connected"
@@ -11889,7 +11900,7 @@
 
 #: public/js/call_popup/call_popup.js:48
 msgid "Call Ended"
-msgstr ""
+msgstr "Llamada finalizada"
 
 #. Label of a Table field in DocType 'Incoming Call Settings'
 #: telephony/doctype/incoming_call_settings/incoming_call_settings.json
@@ -11948,7 +11959,7 @@
 
 #: telephony/doctype/call_log/call_log.js:8
 msgid "Callback"
-msgstr ""
+msgstr "Devolver Llamada"
 
 #. Name of a DocType
 #. Label of a Card Break in the CRM Workspace
@@ -12527,7 +12538,7 @@
 
 #: projects/doctype/task/task.py:134
 msgid "Cannot complete task {0} as its dependant task {1} are not completed / cancelled."
-msgstr ""
+msgstr "No se puede completar la tarea {0} porque su tarea dependiente {1} no está completada / cancelada."
 
 #: accounts/doctype/cost_center/cost_center.py:63
 msgid "Cannot convert Cost Center to ledger as it has child nodes"
@@ -13227,13 +13238,13 @@
 
 #: setup/setup_wizard/operations/install_fixtures.py:205
 msgid "Cheque"
-msgstr ""
+msgstr "Cheque"
 
 #. Option for the 'Salary Mode' (Select) field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "Cheque"
-msgstr ""
+msgstr "Cheque"
 
 #. Label of a Date field in DocType 'Bank Clearance Detail'
 #: accounts/doctype/bank_clearance_detail/bank_clearance_detail.json
@@ -13751,31 +13762,31 @@
 #: setup/doctype/holiday_list/holiday_list.json
 msgctxt "Holiday List"
 msgid "Color"
-msgstr ""
+msgstr "Color"
 
 #. Label of a Select field in DocType 'Supplier Scorecard Scoring Standing'
 #: buying/doctype/supplier_scorecard_scoring_standing/supplier_scorecard_scoring_standing.json
 msgctxt "Supplier Scorecard Scoring Standing"
 msgid "Color"
-msgstr ""
+msgstr "Color"
 
 #. Label of a Select field in DocType 'Supplier Scorecard Standing'
 #: buying/doctype/supplier_scorecard_standing/supplier_scorecard_standing.json
 msgctxt "Supplier Scorecard Standing"
 msgid "Color"
-msgstr ""
+msgstr "Color"
 
 #. Label of a Color field in DocType 'Task'
 #: projects/doctype/task/task.json
 msgctxt "Task"
 msgid "Color"
-msgstr ""
+msgstr "Color"
 
 #. Label of a Data field in DocType 'Vehicle'
 #: setup/doctype/vehicle/vehicle.json
 msgctxt "Vehicle"
 msgid "Color"
-msgstr ""
+msgstr "Color"
 
 #: setup/setup_wizard/operations/install_fixtures.py:231
 msgid "Colour"
@@ -14990,7 +15001,7 @@
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "Company Details"
-msgstr ""
+msgstr "Detalles de la Compañía"
 
 #. Option for the 'Preferred Contact Email' (Select) field in DocType
 #. 'Employee'
@@ -15140,46 +15151,46 @@
 #: crm/doctype/competitor/competitor.json
 #: selling/report/lost_quotations/lost_quotations.py:24
 msgid "Competitor"
-msgstr ""
+msgstr "Competidor"
 
 #. Label of a Link field in DocType 'Competitor Detail'
 #: crm/doctype/competitor_detail/competitor_detail.json
 msgctxt "Competitor Detail"
 msgid "Competitor"
-msgstr ""
+msgstr "Competidor"
 
 #. Name of a DocType
 #: crm/doctype/competitor_detail/competitor_detail.json
 msgid "Competitor Detail"
-msgstr ""
+msgstr "Detalle del Competidor"
 
 #. Linked DocType in Competitor's connections
 #: crm/doctype/competitor/competitor.json
 msgctxt "Competitor"
 msgid "Competitor Detail"
-msgstr ""
+msgstr "Detalle del Competidor"
 
 #. Label of a Data field in DocType 'Competitor'
 #: crm/doctype/competitor/competitor.json
 msgctxt "Competitor"
 msgid "Competitor Name"
-msgstr ""
+msgstr "Nombre del Competidor"
 
 #: public/js/utils/sales_common.js:417
 msgid "Competitors"
-msgstr ""
+msgstr "Competidores"
 
 #. Label of a Table MultiSelect field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "Competitors"
-msgstr ""
+msgstr "Competidores"
 
 #. Label of a Table MultiSelect field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
 msgctxt "Quotation"
 msgid "Competitors"
-msgstr ""
+msgstr "Competidores"
 
 #: erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.js:61
 msgid "Complete"
@@ -15438,7 +15449,7 @@
 #: projects/doctype/task/task.json
 msgctxt "Task"
 msgid "Completed On"
-msgstr ""
+msgstr "Completado el"
 
 #: projects/doctype/task/task.py:168
 msgid "Completed On cannot be greater than Today"
@@ -15482,7 +15493,7 @@
 
 #: projects/report/project_summary/project_summary.py:130
 msgid "Completed Tasks"
-msgstr ""
+msgstr "Tareas Completadas"
 
 #. Label of a Data field in DocType 'Job Card Operation'
 #: manufacturing/doctype/job_card_operation/job_card_operation.json
@@ -15562,13 +15573,13 @@
 #: stock/doctype/inventory_dimension/inventory_dimension.json
 msgctxt "Inventory Dimension"
 msgid "Conditional Rule"
-msgstr ""
+msgstr "Regla condicional"
 
 #. Label of a Section Break field in DocType 'Inventory Dimension'
 #: stock/doctype/inventory_dimension/inventory_dimension.json
 msgctxt "Inventory Dimension"
 msgid "Conditional Rule Examples"
-msgstr ""
+msgstr "Ejemplos de reglas condicionales"
 
 #. Description of the 'Mixed Conditions' (Check) field in DocType 'Pricing
 #. Rule'
@@ -15581,13 +15592,13 @@
 #: accounts/doctype/pos_profile/pos_profile.json
 msgctxt "POS Profile"
 msgid "Configuration"
-msgstr ""
+msgstr "Configuración"
 
 #. Label of a Tab Break field in DocType 'Work Order'
 #: manufacturing/doctype/work_order/work_order.json
 msgctxt "Work Order"
 msgid "Configuration"
-msgstr ""
+msgstr "Configuración"
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/configure_account_settings/configure_account_settings.json
@@ -16081,19 +16092,19 @@
 #: selling/doctype/customer/customer.json
 msgctxt "Customer"
 msgid "Contact & Address"
-msgstr ""
+msgstr "Contacto y Dirección"
 
 #. Label of a Tab Break field in DocType 'Sales Invoice'
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "Contact & Address"
-msgstr ""
+msgstr "Contacto y Dirección"
 
 #. Label of a Tab Break field in DocType 'Supplier'
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "Contact & Address"
-msgstr ""
+msgstr "Contacto y Dirección"
 
 #. Label of a HTML field in DocType 'Sales Partner'
 #: setup/doctype/sales_partner/sales_partner.json
@@ -16453,7 +16464,7 @@
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "Contacts"
-msgstr ""
+msgstr "Contactos"
 
 #. Label of a Data field in DocType 'Issue'
 #: support/doctype/issue/issue.json
@@ -16551,13 +16562,13 @@
 #: selling/report/sales_person_commission_summary/sales_person_commission_summary.py:76
 #: selling/report/sales_person_wise_transaction_summary/sales_person_wise_transaction_summary.py:121
 msgid "Contribution %"
-msgstr ""
+msgstr "Contribución %"
 
 #. Label of a Float field in DocType 'Sales Team'
 #: selling/doctype/sales_team/sales_team.json
 msgctxt "Sales Team"
 msgid "Contribution (%)"
-msgstr ""
+msgstr "Contribución (%)"
 
 #: selling/report/sales_person_commission_summary/sales_person_commission_summary.py:88
 #: selling/report/sales_person_wise_transaction_summary/sales_person_wise_transaction_summary.py:123
@@ -16774,7 +16785,7 @@
 #. Label of a Card Break in the Settings Workspace
 #: setup/workspace/settings/settings.json
 msgid "Core"
-msgstr ""
+msgstr "Núcleo"
 
 #. Option for the 'Corrective/Preventive' (Select) field in DocType 'Quality
 #. Action'
@@ -17964,20 +17975,20 @@
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_your_first_purchase_invoice/create_your_first_purchase_invoice.json
 msgid "Create Your First Purchase Invoice "
-msgstr ""
+msgstr "Crea tu primera Factura de Compra "
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
 #: setup/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
 msgid "Create Your First Sales Invoice "
-msgstr ""
+msgstr "Crea tu primera Factura de Ventas "
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_a_customer/create_a_customer.json
 #: selling/onboarding_step/create_a_customer/create_a_customer.json
 #: setup/onboarding_step/create_a_customer/create_a_customer.json
 msgid "Create a Customer"
-msgstr ""
+msgstr "Crear Cliente"
 
 #. Title of an Onboarding Step
 #: selling/onboarding_step/create_product/create_product.json
@@ -17999,12 +18010,12 @@
 #: selling/onboarding_step/create_a_product/create_a_product.json
 #: stock/onboarding_step/create_a_product/create_a_product.json
 msgid "Create a Product"
-msgstr ""
+msgstr "Crear un Producto"
 
 #. Title of an Onboarding Step
 #: selling/onboarding_step/create_a_quotation/create_a_quotation.json
 msgid "Create a Quotation"
-msgstr ""
+msgstr "Crear un Presupuesto"
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_a_product/create_a_product.json
@@ -18022,17 +18033,17 @@
 #: setup/onboarding_step/create_a_supplier/create_a_supplier.json
 #: stock/onboarding_step/create_a_supplier/create_a_supplier.json
 msgid "Create a Supplier"
-msgstr ""
+msgstr "Crear un Proveedor"
 
 #. Title of an Onboarding Step
 #: manufacturing/onboarding_step/warehouse/warehouse.json
 msgid "Create a Warehouse"
-msgstr ""
+msgstr "Crear un Almacén"
 
 #. Label of an action in the Onboarding Step 'Create an Item'
 #: setup/onboarding_step/create_an_item/create_an_item.json
 msgid "Create a new Item"
-msgstr ""
+msgstr "Crear un nuevo Producto"
 
 #. Option for the 'Capitalization Method' (Select) field in DocType 'Asset
 #. Capitalization'
@@ -18062,7 +18073,7 @@
 #: setup/onboarding_step/create_an_item/create_an_item.json
 #: stock/onboarding_step/create_an_item/create_an_item.json
 msgid "Create an Item"
-msgstr ""
+msgstr "Crear Producto"
 
 #: stock/stock_ledger.py:1684
 msgid "Create an incoming stock transaction for the Item."
@@ -18071,7 +18082,7 @@
 #. Title of an Onboarding Step
 #: crm/onboarding_step/create_and_send_quotation/create_and_send_quotation.json
 msgid "Create and Send Quotation"
-msgstr ""
+msgstr "Crear y Enviar Cotización"
 
 #: utilities/activation.py:87
 msgid "Create customer quotes"
@@ -18080,7 +18091,7 @@
 #. Title of an Onboarding Step
 #: buying/onboarding_step/create_your_first_purchase_order/create_your_first_purchase_order.json
 msgid "Create first Purchase Order"
-msgstr ""
+msgstr "Crear primera Orden de Compra"
 
 #. Description of the 'Create Missing Party' (Check) field in DocType 'Opening
 #. Invoice Creation Tool'
@@ -18097,7 +18108,7 @@
 #. Title of an Onboarding Step
 #: setup/onboarding_step/create_a_quotation/create_a_quotation.json
 msgid "Create your first Quotation"
-msgstr ""
+msgstr "Crea tu primera Cotización"
 
 #. Title of an Onboarding Step
 #: selling/onboarding_step/create_your_first_sales_order/create_your_first_sales_order.json
@@ -18180,7 +18191,7 @@
 #: stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py:131
 #: stock/report/stock_ledger_variance/stock_ledger_variance.py:44
 msgid "Creation"
-msgstr ""
+msgstr "Creación"
 
 #. Label of a Data field in DocType 'Serial No'
 #: stock/doctype/serial_no/serial_no.json
@@ -20594,7 +20605,7 @@
 
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.html:25
 msgid "Date: "
-msgstr ""
+msgstr "Fecha: "
 
 #. Option for the 'Billing Interval' (Select) field in DocType 'Subscription
 #. Plan'
@@ -22159,7 +22170,7 @@
 #: setup/doctype/global_defaults/global_defaults.json
 msgctxt "Global Defaults"
 msgid "Demo Company"
-msgstr ""
+msgstr "Empresa de Demostración"
 
 #: public/js/utils/demo.js:28
 msgid "Demo data cleared"
@@ -23065,7 +23076,7 @@
 #: setup/doctype/print_heading/print_heading.json stock/doctype/item/item.json
 #: support/doctype/service_level_agreement/service_level_agreement.json
 msgid "Desk User"
-msgstr ""
+msgstr "Usuario de Escritorio"
 
 #: public/js/utils/sales_common.js:423
 msgid "Detailed Reason"
@@ -23691,7 +23702,7 @@
 
 #: selling/page/point_of_sale/pos_item_details.js:173
 msgid "Discount (%)"
-msgstr ""
+msgstr "Descuento (%)"
 
 #. Label of a Float field in DocType 'Delivery Note Item'
 #: stock/doctype/delivery_note_item/delivery_note_item.json
@@ -24430,7 +24441,7 @@
 
 #: public/js/utils/serial_no_batch_selector.js:237
 msgid "Download CSV Template"
-msgstr ""
+msgstr "Descargar la plantilla CSV"
 
 #. Label of a Button field in DocType 'Production Plan'
 #: manufacturing/doctype/production_plan/production_plan.json
@@ -25085,19 +25096,19 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN"
-msgstr ""
+msgstr "EAN"
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN-12"
-msgstr ""
+msgstr "EAN-12"
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN-8"
-msgstr ""
+msgstr "EAN-8"
 
 #. Label of a Data field in DocType 'Tally Migration'
 #: erpnext_integrations/doctype/tally_migration/tally_migration.json
@@ -25153,7 +25164,7 @@
 
 #: public/js/utils/crm_activities.js:182
 msgid "Edit Note"
-msgstr ""
+msgstr "Editar Nota"
 
 #: stock/doctype/delivery_note/delivery_note.js:370
 msgid "Edit Posting Date and Time"
@@ -27372,7 +27383,7 @@
 
 #: bulk_transaction/doctype/bulk_transaction_log/bulk_transaction_log.js:9
 msgid "Failed Entries"
-msgstr ""
+msgstr "Entradas fallidas"
 
 #. Label of a HTML field in DocType 'Tally Migration'
 #: erpnext_integrations/doctype/tally_migration/tally_migration.json
@@ -27423,7 +27434,7 @@
 #: accounts/doctype/pos_closing_entry/pos_closing_entry.json
 msgctxt "POS Closing Entry"
 msgid "Failure Description"
-msgstr ""
+msgstr "Descripción del fallo"
 
 #. Label of a Small Text field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
@@ -27839,7 +27850,7 @@
 #. Name of a Workspace
 #: accounts/workspace/financial_reports/financial_reports.json
 msgid "Financial Reports"
-msgstr ""
+msgstr "Informes Financieros"
 
 #. Title of an Onboarding Step
 #. Label of a Card Break in the Financial Reports Workspace
@@ -28362,7 +28373,7 @@
 
 #: public/js/utils/serial_no_batch_selector.js:116
 msgid "For Work Order"
-msgstr ""
+msgstr "Para Orden de Trabajo"
 
 #: controllers/status_updater.py:238
 msgid "For an item {0}, quantity must be negative number"
@@ -29355,14 +29366,14 @@
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Fully Paid"
-msgstr ""
+msgstr "Totalmente pagado"
 
 #. Option for the 'Advance Payment Status' (Select) field in DocType 'Sales
 #. Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Fully Paid"
-msgstr ""
+msgstr "Totalmente pagado"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:28
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:41
@@ -29503,7 +29514,7 @@
 #: accounts/doctype/mode_of_payment/mode_of_payment.json
 msgctxt "Mode of Payment"
 msgid "General"
-msgstr ""
+msgstr "General"
 
 #. Description of a report in the Onboarding Step 'Financial Statements'
 #. Name of a report
@@ -29584,7 +29595,7 @@
 
 #: accounts/doctype/repost_accounting_ledger/repost_accounting_ledger.js:30
 msgid "Generating Preview"
-msgstr ""
+msgstr "Generando vista previa"
 
 #. Label of a Button field in DocType 'Purchase Invoice'
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
@@ -31005,25 +31016,25 @@
 #: accounts/doctype/bank_account/bank_account.json
 msgctxt "Bank Account"
 msgid "IBAN"
-msgstr ""
+msgstr "IBAN"
 
 #. Label of a Data field in DocType 'Bank Guarantee'
 #: accounts/doctype/bank_guarantee/bank_guarantee.json
 msgctxt "Bank Guarantee"
 msgid "IBAN"
-msgstr ""
+msgstr "IBAN"
 
 #. Label of a Data field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "IBAN"
-msgstr ""
+msgstr "IBAN"
 
 #. Label of a Read Only field in DocType 'Payment Request'
 #: accounts/doctype/payment_request/payment_request.json
 msgctxt "Payment Request"
 msgid "IBAN"
-msgstr ""
+msgstr "IBAN"
 
 #: accounts/doctype/bank_account/bank_account.py:84
 #: accounts/doctype/bank_account/bank_account.py:87
@@ -31050,25 +31061,25 @@
 #. Name of a report
 #: regional/report/irs_1099/irs_1099.json
 msgid "IRS 1099"
-msgstr ""
+msgstr "IRS 1099"
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISBN"
-msgstr ""
+msgstr "ISBN"
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISBN-10"
-msgstr ""
+msgstr "ISBN-10"
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISBN-13"
-msgstr ""
+msgstr "ISBN-13"
 
 #. Option for the 'Series' (Select) field in DocType 'Issue'
 #: support/doctype/issue/issue.json
@@ -31080,7 +31091,7 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISSN"
-msgstr ""
+msgstr "ISSN"
 
 #: manufacturing/report/job_card_summary/job_card_summary.py:128
 #: manufacturing/report/quality_inspection_summary/quality_inspection_summary.py:69
@@ -32770,67 +32781,67 @@
 #. Name of a DocType
 #: setup/doctype/incoterm/incoterm.json
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Delivery Note'
 #: stock/doctype/delivery_note/delivery_note.json
 msgctxt "Delivery Note"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Purchase Invoice'
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
 msgctxt "Purchase Invoice"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Purchase Order'
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
 msgctxt "Quotation"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Request for Quotation'
 #: buying/doctype/request_for_quotation/request_for_quotation.json
 msgctxt "Request for Quotation"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Sales Invoice'
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Link field in DocType 'Supplier Quotation'
 #: buying/doctype/supplier_quotation/supplier_quotation.json
 msgctxt "Supplier Quotation"
 msgid "Incoterm"
-msgstr ""
+msgstr "Incoterm"
 
 #. Label of a Int field in DocType 'Asset Repair'
 #: assets/doctype/asset_repair/asset_repair.json
@@ -33104,7 +33115,7 @@
 
 #: setup/setup_wizard/setup_wizard.py:24
 msgid "Installing presets"
-msgstr ""
+msgstr "Instalación de preajustes"
 
 #. Label of a Small Text field in DocType 'BOM Creator Item'
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
@@ -33543,7 +33554,7 @@
 #: assets/doctype/asset/asset.py:411 assets/doctype/asset/asset.py:417
 #: assets/doctype/asset/asset.py:444
 msgid "Invalid Schedule"
-msgstr ""
+msgstr "Programación no válida"
 
 #: controllers/selling_controller.py:225
 msgid "Invalid Selling Price"
@@ -33560,7 +33571,7 @@
 #: stock/doctype/putaway_rule/putaway_rule.py:69
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:126
 msgid "Invalid Warehouse"
-msgstr ""
+msgstr "Almacén inválido"
 
 #: accounts/doctype/pricing_rule/pricing_rule.py:304
 msgid "Invalid condition expression"
@@ -33621,7 +33632,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "Inventory Settings"
-msgstr ""
+msgstr "Configuración de Inventario"
 
 #. Subtitle of the Module Onboarding 'Stock'
 #: stock/module_onboarding/stock/stock.json
@@ -33866,7 +33877,7 @@
 #: accounts/workspace/payables/payables.json
 #: accounts/workspace/receivables/receivables.json
 msgid "Invoicing"
-msgstr ""
+msgstr "Facturación"
 
 #. Label of a Section Break field in DocType 'Accounts Settings'
 #: accounts/doctype/accounts_settings/accounts_settings.json
@@ -36002,349 +36013,349 @@
 #: stock/report/supplier_wise_sales_analytics/supplier_wise_sales_analytics.py:59
 #: stock/report/warehouse_wise_item_balance_age_and_value/warehouse_wise_item_balance_age_and_value.py:93
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Read Only field in DocType 'Asset'
 #: assets/doctype/asset/asset.json
 msgctxt "Asset"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Asset Capitalization Asset Item'
 #: assets/doctype/asset_capitalization_asset_item/asset_capitalization_asset_item.json
 msgctxt "Asset Capitalization Asset Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Asset Capitalization Service Item'
 #: assets/doctype/asset_capitalization_service_item/asset_capitalization_service_item.json
 msgctxt "Asset Capitalization Service Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Asset Capitalization Stock Item'
 #: assets/doctype/asset_capitalization_stock_item/asset_capitalization_stock_item.json
 msgctxt "Asset Capitalization Stock Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Read Only field in DocType 'Asset Maintenance'
 #: assets/doctype/asset_maintenance/asset_maintenance.json
 msgctxt "Asset Maintenance"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Read Only field in DocType 'Asset Maintenance Log'
 #: assets/doctype/asset_maintenance_log/asset_maintenance_log.json
 msgctxt "Asset Maintenance Log"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM'
 #: manufacturing/doctype/bom/bom.json
 msgctxt "BOM"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Creator'
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgctxt "BOM Creator"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Creator Item'
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
 msgctxt "BOM Creator Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Explosion Item'
 #: manufacturing/doctype/bom_explosion_item/bom_explosion_item.json
 msgctxt "BOM Explosion Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Item'
 #: manufacturing/doctype/bom_item/bom_item.json
 msgctxt "BOM Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Scrap Item'
 #: manufacturing/doctype/bom_scrap_item/bom_scrap_item.json
 msgctxt "BOM Scrap Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'BOM Website Item'
 #: manufacturing/doctype/bom_website_item/bom_website_item.json
 msgctxt "BOM Website Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Batch'
 #: stock/doctype/batch/batch.json
 msgctxt "Batch"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Blanket Order Item'
 #: manufacturing/doctype/blanket_order_item/blanket_order_item.json
 msgctxt "Blanket Order Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Delivery Note Item'
 #: stock/doctype/delivery_note_item/delivery_note_item.json
 msgctxt "Delivery Note Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Item'
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Read Only field in DocType 'Item Alternative'
 #: stock/doctype/item_alternative/item_alternative.json
 msgctxt "Item Alternative"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Item Manufacturer'
 #: stock/doctype/item_manufacturer/item_manufacturer.json
 msgctxt "Item Manufacturer"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Item Price'
 #: stock/doctype/item_price/item_price.json
 msgctxt "Item Price"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Read Only field in DocType 'Job Card'
 #: manufacturing/doctype/job_card/job_card.json
 msgctxt "Job Card"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Job Card Item'
 #: manufacturing/doctype/job_card_item/job_card_item.json
 msgctxt "Job Card Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Maintenance Schedule Detail'
 #: maintenance/doctype/maintenance_schedule_detail/maintenance_schedule_detail.json
 msgctxt "Maintenance Schedule Detail"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Maintenance Schedule Item'
 #: maintenance/doctype/maintenance_schedule_item/maintenance_schedule_item.json
 msgctxt "Maintenance Schedule Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Maintenance Visit Purpose'
 #: maintenance/doctype/maintenance_visit_purpose/maintenance_visit_purpose.json
 msgctxt "Maintenance Visit Purpose"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Material Request Item'
 #: stock/doctype/material_request_item/material_request_item.json
 msgctxt "Material Request Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Material Request Plan Item'
 #: manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
 msgctxt "Material Request Plan Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Opening Invoice Creation Tool Item'
 #: accounts/doctype/opening_invoice_creation_tool_item/opening_invoice_creation_tool_item.json
 msgctxt "Opening Invoice Creation Tool Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Opportunity Item'
 #: crm/doctype/opportunity_item/opportunity_item.json
 msgctxt "Opportunity Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'POS Invoice Item'
 #: accounts/doctype/pos_invoice_item/pos_invoice_item.json
 msgctxt "POS Invoice Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Packed Item'
 #: stock/doctype/packed_item/packed_item.json
 msgctxt "Packed Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Packing Slip Item'
 #: stock/doctype/packing_slip_item/packing_slip_item.json
 msgctxt "Packing Slip Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Pick List Item'
 #: stock/doctype/pick_list_item/pick_list_item.json
 msgctxt "Pick List Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Production Plan Sub Assembly Item'
 #: manufacturing/doctype/production_plan_sub_assembly_item/production_plan_sub_assembly_item.json
 msgctxt "Production Plan Sub Assembly Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Purchase Invoice Item'
 #: accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
 msgctxt "Purchase Invoice Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Purchase Order Item'
 #: buying/doctype/purchase_order_item/purchase_order_item.json
 msgctxt "Purchase Order Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Purchase Receipt Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Purchase Receipt Item Supplied'
 #: buying/doctype/purchase_receipt_item_supplied/purchase_receipt_item_supplied.json
 msgctxt "Purchase Receipt Item Supplied"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Putaway Rule'
 #: stock/doctype/putaway_rule/putaway_rule.json
 msgctxt "Putaway Rule"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Quality Inspection'
 #: stock/doctype/quality_inspection/quality_inspection.json
 msgctxt "Quality Inspection"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Quick Stock Balance'
 #: stock/doctype/quick_stock_balance/quick_stock_balance.json
 msgctxt "Quick Stock Balance"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Quotation Item'
 #: selling/doctype/quotation_item/quotation_item.json
 msgctxt "Quotation Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Request for Quotation Item'
 #: buying/doctype/request_for_quotation_item/request_for_quotation_item.json
 msgctxt "Request for Quotation Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Sales Invoice Item'
 #: accounts/doctype/sales_invoice_item/sales_invoice_item.json
 msgctxt "Sales Invoice Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Sales Order Item'
 #: selling/doctype/sales_order_item/sales_order_item.json
 msgctxt "Sales Order Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Serial No'
 #: stock/doctype/serial_no/serial_no.json
 msgctxt "Serial No"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Serial and Batch Bundle'
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
 msgctxt "Serial and Batch Bundle"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
 msgctxt "Stock Entry Detail"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Stock Reconciliation Item'
 #: stock/doctype/stock_reconciliation_item/stock_reconciliation_item.json
 msgctxt "Stock Reconciliation Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Subcontracting Order Item'
 #: subcontracting/doctype/subcontracting_order_item/subcontracting_order_item.json
 msgctxt "Subcontracting Order Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Subcontracting Order Service Item'
 #: subcontracting/doctype/subcontracting_order_service_item/subcontracting_order_service_item.json
 msgctxt "Subcontracting Order Service Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Subcontracting Receipt Item'
 #: subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
 msgctxt "Subcontracting Receipt Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Subcontracting Receipt Supplied Item'
 #: subcontracting/doctype/subcontracting_receipt_supplied_item/subcontracting_receipt_supplied_item.json
 msgctxt "Subcontracting Receipt Supplied Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Supplier Quotation Item'
 #: buying/doctype/supplier_quotation_item/supplier_quotation_item.json
 msgctxt "Supplier Quotation Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Warranty Claim'
 #: support/doctype/warranty_claim/warranty_claim.json
 msgctxt "Warranty Claim"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Work Order'
 #: manufacturing/doctype/work_order/work_order.json
 msgctxt "Work Order"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Data field in DocType 'Work Order Item'
 #: manufacturing/doctype/work_order_item/work_order_item.json
 msgctxt "Work Order Item"
 msgid "Item Name"
-msgstr "Nombre del árticulo"
+msgstr "Nombre del Producto"
 
 #. Label of a Select field in DocType 'Stock Settings'
 #: stock/doctype/stock_settings/stock_settings.json
@@ -36903,7 +36914,7 @@
 #. Subtitle of the Module Onboarding 'Home'
 #: setup/module_onboarding/home/home.json
 msgid "Item, Customer, Supplier and Quotation"
-msgstr ""
+msgstr "Producto, Cliente, Proveedor y Cotización"
 
 #. Name of a report
 #: stock/report/item_wise_price_list_rate/item_wise_price_list_rate.json
@@ -37887,37 +37898,37 @@
 #. Label of a shortcut in the Accounting Workspace
 #: accounts/workspace/accounting/accounting.json
 msgid "Learn Accounting"
-msgstr ""
+msgstr "Aprender Contabilidad"
 
 #. Label of a shortcut in the Stock Workspace
 #: stock/workspace/stock/stock.json
 msgid "Learn Inventory Management"
-msgstr ""
+msgstr "Aprende la Gestión del Inventario"
 
 #. Label of a shortcut in the Manufacturing Workspace
 #: manufacturing/workspace/manufacturing/manufacturing.json
 msgid "Learn Manufacturing"
-msgstr ""
+msgstr "Aprender Manufactura"
 
 #. Label of a shortcut in the Buying Workspace
 #: buying/workspace/buying/buying.json
 msgid "Learn Procurement"
-msgstr ""
+msgstr "Aprender Compras"
 
 #. Label of a shortcut in the Projects Workspace
 #: projects/workspace/projects/projects.json
 msgid "Learn Project Management"
-msgstr ""
+msgstr "Aprender Gestión de Proyecto"
 
 #. Label of a shortcut in the Selling Workspace
 #: selling/workspace/selling/selling.json
 msgid "Learn Sales Management"
-msgstr ""
+msgstr "Aprender Gestión de Ventas"
 
 #. Label of an action in the Onboarding Step 'How to Navigate in ERPNext'
 #: setup/onboarding_step/navigation_help/navigation_help.json
 msgid "Learn about  Navigation options"
-msgstr ""
+msgstr "Aprende sobre las Opciones de Navegación"
 
 #. Description of the 'Enable Common Party Accounting' (Check) field in DocType
 #. 'Accounts Settings'
@@ -37930,22 +37941,22 @@
 #. Label of an action in the Onboarding Step 'Updating Opening Balances'
 #: accounts/onboarding_step/updating_opening_balances/updating_opening_balances.json
 msgid "Learn how to update opening balances"
-msgstr ""
+msgstr "Aprenda cómo actualizar los saldos iniciales"
 
 #. Label of an action in the Onboarding Step 'Review Chart of Accounts'
 #: accounts/onboarding_step/chart_of_accounts/chart_of_accounts.json
 msgid "Learn more about Chart of Accounts"
-msgstr ""
+msgstr "Aprender más sobre el Plan de Cuentas"
 
 #. Label of an action in the Onboarding Step 'Production Planning'
 #: manufacturing/onboarding_step/production_planning/production_planning.json
 msgid "Learn more about Production Planning"
-msgstr ""
+msgstr "Aprender más sobre la Planificación de Producción"
 
 #. Label of an action in the Onboarding Step 'Import Data from Spreadsheet'
 #: setup/onboarding_step/data_import/data_import.json
 msgid "Learn more about data migration"
-msgstr ""
+msgstr "Aprende más sobre Migración de Datos"
 
 #. Label of a Select field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
@@ -38021,7 +38032,7 @@
 
 #: setup/doctype/company/company.py:389
 msgid "Legal"
-msgstr ""
+msgstr "Legal"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:59
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:84
@@ -38116,7 +38127,7 @@
 #. Label of an action in the Onboarding Step 'Set Up a Company'
 #: setup/onboarding_step/company_set_up/company_set_up.json
 msgid "Let's review your Company"
-msgstr ""
+msgstr "Revisemos su Empresa"
 
 #. Label of an action in the Onboarding Step 'Review Fixed Asset Accounts'
 #: assets/onboarding_step/fixed_asset_accounts/fixed_asset_accounts.json
@@ -38267,7 +38278,7 @@
 #. Label of an action in the Onboarding Step 'Sales Order'
 #: selling/onboarding_step/sales_order/sales_order.json
 msgid "Let’s convert your first Sales Order against a Quotation"
-msgstr ""
+msgstr "Convirtamos su primer Pedido de Venta en una Cotización"
 
 #. Label of an action in the Onboarding Step 'Workstation'
 #: manufacturing/onboarding_step/workstation/workstation.json
@@ -38282,7 +38293,7 @@
 #. Label of an action in the Onboarding Step 'Operation'
 #: manufacturing/onboarding_step/operation/operation.json
 msgid "Let’s create an Operation"
-msgstr ""
+msgstr "Vamos a crear una Operación"
 
 #. Label of an action in the Onboarding Step 'Setup a Warehouse'
 #: stock/onboarding_step/create_a_warehouse/create_a_warehouse.json
@@ -38292,7 +38303,7 @@
 #. Label of an action in the Onboarding Step 'Create a Customer'
 #: setup/onboarding_step/create_a_customer/create_a_customer.json
 msgid "Let’s create your first Customer"
-msgstr ""
+msgstr "Creemos su primer Cliente"
 
 #. Label of an action in the Onboarding Step 'Track Material Request'
 #: buying/onboarding_step/create_a_material_request/create_a_material_request.json
@@ -38313,12 +38324,12 @@
 #. Label of an action in the Onboarding Step 'Create your first Quotation'
 #: setup/onboarding_step/create_a_quotation/create_a_quotation.json
 msgid "Let’s create your first Quotation"
-msgstr ""
+msgstr "Creemos su primera Cotización"
 
 #. Label of an action in the Onboarding Step 'Create a Supplier'
 #: setup/onboarding_step/create_a_supplier/create_a_supplier.json
 msgid "Let’s create your first Supplier"
-msgstr ""
+msgstr "Creemos su primer Proveedor"
 
 #. Label of an action in the Onboarding Step 'Setup Your Letterhead'
 #: setup/onboarding_step/letterhead/letterhead.json
@@ -38648,13 +38659,13 @@
 #: stock/doctype/manufacturer/manufacturer.json
 msgctxt "Manufacturer"
 msgid "Logo"
-msgstr ""
+msgstr "Logo"
 
 #. Label of a Attach field in DocType 'Sales Partner'
 #: setup/doctype/sales_partner/sales_partner.json
 msgctxt "Sales Partner"
 msgid "Logo"
-msgstr ""
+msgstr "Logo"
 
 #. Label of a Float field in DocType 'Delivery Stop'
 #: stock/doctype/delivery_stop/delivery_stop.json
@@ -38710,11 +38721,11 @@
 #: selling/report/lost_quotations/lost_quotations.json
 #: selling/report/lost_quotations/lost_quotations.py:31
 msgid "Lost Quotations"
-msgstr ""
+msgstr "Cotizaciones perdidas"
 
 #: selling/report/lost_quotations/lost_quotations.py:37
 msgid "Lost Quotations %"
-msgstr ""
+msgstr "Cotizaciones perdidas %"
 
 #: crm/report/lost_opportunity/lost_opportunity.js:31
 #: selling/report/lost_quotations/lost_quotations.py:24
@@ -39403,7 +39414,7 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.js:56
 msgid "Make "
-msgstr ""
+msgstr "Crear "
 
 #: assets/doctype/asset/asset_list.js:39
 msgid "Make Asset Movement"
@@ -39433,7 +39444,7 @@
 
 #: templates/pages/rfq.html:19
 msgid "Make Quotation"
-msgstr ""
+msgstr "Hacer Cotización"
 
 #: stock/doctype/purchase_receipt/purchase_receipt.js:287
 msgid "Make Return Entry"
@@ -39474,7 +39485,7 @@
 #: assets/doctype/asset/asset.js:124 assets/doctype/asset/asset.js:136
 #: setup/doctype/company/company.js:112 setup/doctype/company/company.js:119
 msgid "Manage"
-msgstr ""
+msgstr "Gestionar"
 
 #. Label of an action in the Onboarding Step 'Setting up Taxes'
 #: accounts/onboarding_step/setup_taxes/setup_taxes.json
@@ -41922,7 +41933,7 @@
 
 #: assets/doctype/asset/asset_dashboard.py:7
 msgid "Movement"
-msgstr ""
+msgstr "Movimiento"
 
 #. Option for the 'Valuation Method' (Select) field in DocType 'Item'
 #: stock/doctype/item/item.json
@@ -42907,7 +42918,7 @@
 
 #: public/js/utils/crm_activities.js:63
 msgid "New Task"
-msgstr ""
+msgstr "Nueva Tarea"
 
 #: manufacturing/doctype/bom/bom.js:112
 msgid "New Version"
@@ -43484,7 +43495,7 @@
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Not Initiated"
-msgstr ""
+msgstr "No iniciado"
 
 #: buying/doctype/purchase_order/purchase_order.py:744
 #: templates/pages/material_request_info.py:21 templates/pages/order.py:32
@@ -43497,7 +43508,7 @@
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Not Requested"
-msgstr ""
+msgstr "No solicitado"
 
 #: selling/report/lost_quotations/lost_quotations.py:86
 #: support/report/issue_analytics/issue_analytics.py:208
@@ -50675,7 +50686,7 @@
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "Preferred Email"
-msgstr ""
+msgstr "Correo electrónico preferido"
 
 #. Label of a Data field in DocType 'Packed Item'
 #: stock/doctype/packed_item/packed_item.json
@@ -55756,7 +55767,7 @@
 #: buying/doctype/supplier_quotation/supplier_quotation.json
 msgctxt "Supplier Quotation"
 msgid "Quotation Number"
-msgstr ""
+msgstr "Número de Cotización"
 
 #. Label of a Link field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
@@ -58424,7 +58435,7 @@
 #: accounts/report/balance_sheet/balance_sheet.js:17
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.js:17
 msgid "Report View"
-msgstr ""
+msgstr "Vista de Reporte"
 
 #. Label of a Card Break in the Payables Workspace
 #. Label of a Card Break in the Receivables Workspace
@@ -63156,7 +63167,7 @@
 #: accounts/report/balance_sheet/balance_sheet.js:14
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.js:14
 msgid "Select View"
-msgstr ""
+msgstr "Seleccione Vista"
 
 #: public/js/bank_reconciliation_tool/dialog_manager.js:248
 msgid "Select Vouchers to Match"
@@ -64804,7 +64815,7 @@
 #. Title of an Onboarding Step
 #: setup/onboarding_step/company_set_up/company_set_up.json
 msgid "Set Up a Company"
-msgstr ""
+msgstr "Configurar una Compañía"
 
 #. Label of a Check field in DocType 'BOM Creator'
 #: manufacturing/doctype/bom_creator/bom_creator.json
@@ -65910,7 +65921,7 @@
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:32
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:45
 msgid "Software"
-msgstr ""
+msgstr "Software"
 
 #: assets/doctype/asset/asset_list.js:11
 msgid "Sold"
@@ -67270,7 +67281,7 @@
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "Stock Frozen Up To"
-msgstr ""
+msgstr "Existencias congeladas hasta"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:20
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:31
@@ -70742,7 +70753,7 @@
 #. Label of a Card Break in the Accounting Workspace
 #: accounts/workspace/accounting/accounting.json
 msgid "Tax Masters"
-msgstr ""
+msgstr "Maestros Fiscales"
 
 #: accounts/doctype/account/account_tree.js:119
 msgid "Tax Rate"
@@ -72059,7 +72070,7 @@
 #: accounts/doctype/journal_entry/journal_entry.py:155
 #: accounts/doctype/journal_entry/journal_entry.py:162
 msgid "The task has been enqueued as a background job."
-msgstr ""
+msgstr "La tarea se ha puesto en cola como trabajo en segundo plano."
 
 #: stock/doctype/stock_entry/stock_entry.py:244
 msgid "The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Entry and revert to the Draft stage"
@@ -72118,7 +72129,7 @@
 
 #: stock/doctype/material_request/material_request.py:779
 msgid "The {0} {1} created successfully"
-msgstr ""
+msgstr "El {0} {1} creado exitosamente"
 
 #: manufacturing/doctype/job_card/job_card.py:762
 msgid "The {0} {1} is used to calculate the valuation cost for the finished good {2}."
@@ -73328,13 +73339,13 @@
 #: buying/doctype/purchase_order/purchase_order_list.js:12
 #: selling/doctype/sales_order/sales_order_list.js:14
 msgid "To Pay"
-msgstr ""
+msgstr "A Pagar"
 
 #. Option for the 'Status' (Select) field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "To Pay"
-msgstr ""
+msgstr "A Pagar"
 
 #. Label of a Date field in DocType 'Payment Reconciliation'
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.json
@@ -74678,13 +74689,13 @@
 #: assets/doctype/asset_capitalization/asset_capitalization.json
 msgctxt "Asset Capitalization"
 msgid "Total Value"
-msgstr ""
+msgstr "Valor Total"
 
 #. Label of a Currency field in DocType 'Asset Repair Consumed Item'
 #: assets/doctype/asset_repair_consumed_item/asset_repair_consumed_item.json
 msgctxt "Asset Repair Consumed Item"
 msgid "Total Value"
-msgstr ""
+msgstr "Valor Total"
 
 #. Label of a Currency field in DocType 'Stock Entry'
 #: stock/doctype/stock_entry/stock_entry.json
@@ -74787,7 +74798,7 @@
 #: accounts/report/financial_statements.py:339
 #: accounts/report/financial_statements.py:340
 msgid "Total {0} ({1})"
-msgstr ""
+msgstr "Total {0} ({1})"
 
 #: stock/doctype/landed_cost_voucher/landed_cost_voucher.py:162
 msgid "Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'"
@@ -74902,7 +74913,7 @@
 #: stock/doctype/shipment/shipment.json
 msgctxt "Shipment"
 msgid "Tracking URL"
-msgstr ""
+msgstr "URL de Seguimiento"
 
 #: accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py:435
 #: manufacturing/doctype/workstation/workstation_dashboard.py:10
@@ -76055,7 +76066,7 @@
 #: setup/workspace/home/home.json stock/workspace/stock/stock.json
 msgctxt "UOM"
 msgid "Unit of Measure (UOM)"
-msgstr ""
+msgstr "Unidad de Medida (UdM)"
 
 #: stock/doctype/item/item.py:378
 msgid "Unit of Measure {0} has been entered more than once in Conversion Factor Table"
@@ -76311,7 +76322,7 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:17
 msgid "Up"
-msgstr ""
+msgstr "Arriba"
 
 #. Label of a Check field in DocType 'Email Digest'
 #: setup/doctype/email_digest/email_digest.json
@@ -76579,7 +76590,7 @@
 
 #: accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.js:44
 msgid "Upload Bank Statement"
-msgstr ""
+msgstr "Cargar extracto bancario"
 
 #. Label of a Section Break field in DocType 'Import Supplier Invoice'
 #: regional/doctype/import_supplier_invoice/import_supplier_invoice.json
@@ -76881,7 +76892,7 @@
 #. Name of a report
 #: regional/report/vat_audit_report/vat_audit_report.json
 msgid "VAT Audit Report"
-msgstr ""
+msgstr "Informe de auditoría del IVA"
 
 #: regional/report/uae_vat_201/uae_vat_201.py:115
 msgid "VAT on Expenses and All Other Inputs"
@@ -77631,7 +77642,7 @@
 #: utilities/doctype/video/video.json
 msgctxt "Video"
 msgid "Vimeo"
-msgstr ""
+msgstr "Vimeo"
 
 #: templates/pages/help.html:46
 msgid "Visit the forums"
@@ -77930,7 +77941,7 @@
 
 #: patches/v15_0/remove_exotel_integration.py:32
 msgid "WARNING: Exotel app has been separated from ERPNext, please install the app to continue using Exotel integration."
-msgstr ""
+msgstr "ADVERTENCIA: La aplicación Exotel se ha separado de ERPNext; instale la aplicación para continuar usando la integración de Exotel."
 
 #. Label of a Link field in DocType 'Material Request Item'
 #: stock/doctype/material_request_item/material_request_item.json
@@ -78543,7 +78554,7 @@
 
 #: accounts/doctype/cost_center_allocation/cost_center_allocation.py:116
 msgid "Warning!"
-msgstr ""
+msgstr "¡Advertencia!"
 
 #: accounts/doctype/journal_entry/journal_entry.py:1146
 msgid "Warning: Another {0} # {1} exists against stock entry {2}"
@@ -78816,7 +78827,7 @@
 #: selling/report/sales_analytics/sales_analytics.py:316
 #: stock/report/stock_analytics/stock_analytics.py:115
 msgid "Week {0} {1}"
-msgstr ""
+msgstr "Semana {0} {1}"
 
 #. Label of a Select field in DocType 'Quality Goal'
 #: quality_management/doctype/quality_goal/quality_goal.json
@@ -78914,13 +78925,13 @@
 #: stock/doctype/shipment_parcel/shipment_parcel.json
 msgctxt "Shipment Parcel"
 msgid "Weight (kg)"
-msgstr ""
+msgstr "Peso (kg)"
 
 #. Label of a Float field in DocType 'Shipment Parcel Template'
 #: stock/doctype/shipment_parcel_template/shipment_parcel_template.json
 msgctxt "Shipment Parcel Template"
 msgid "Weight (kg)"
-msgstr ""
+msgstr "Peso (kg)"
 
 #. Label of a Float field in DocType 'Delivery Note Item'
 #: stock/doctype/delivery_note_item/delivery_note_item.json
@@ -79072,13 +79083,13 @@
 #: crm/doctype/lead/lead.json
 msgctxt "Lead"
 msgid "WhatsApp"
-msgstr ""
+msgstr "WhatsApp"
 
 #. Label of a Data field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "WhatsApp"
-msgstr ""
+msgstr "WhatsApp"
 
 #. Label of a Int field in DocType 'Vehicle'
 #: setup/doctype/vehicle/vehicle.json
@@ -79725,7 +79736,7 @@
 
 #: accounts/doctype/chart_of_accounts_importer/chart_of_accounts_importer.py:70
 msgid "Wrong Company"
-msgstr ""
+msgstr "Compañía incorrecta"
 
 #: setup/doctype/company/company.js:172
 msgid "Wrong Password"
@@ -80221,7 +80232,7 @@
 #: manufacturing/doctype/production_plan_sub_assembly_item/production_plan_sub_assembly_item.json
 msgctxt "Production Plan Sub Assembly Item"
 msgid "description"
-msgstr ""
+msgstr "descripción"
 
 #. Option for the 'Plaid Environment' (Select) field in DocType 'Plaid
 #. Settings'
@@ -80914,7 +80925,7 @@
 
 #: manufacturing/doctype/job_card/job_card.py:773
 msgid "{0} {1}"
-msgstr ""
+msgstr "{0} {1}"
 
 #: public/js/utils/serial_no_batch_selector.js:203
 msgid "{0} {1} Manually"
@@ -80922,7 +80933,7 @@
 
 #: accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py:433
 msgid "{0} {1} Partially Reconciled"
-msgstr ""
+msgstr "{0} {1} Parcialmente reconciliado"
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:417
 msgid "{0} {1} cannot be updated. If you need to make changes, we recommend canceling the existing entry and creating a new one."
@@ -81091,20 +81102,20 @@
 
 #: projects/doctype/project/project_list.js:6
 msgid "{0}%"
-msgstr ""
+msgstr "{0}%"
 
 #: controllers/website_list_for_contact.py:205
 msgid "{0}% Billed"
-msgstr ""
+msgstr "{0}% Facturado"
 
 #: controllers/website_list_for_contact.py:213
 msgid "{0}% Delivered"
-msgstr ""
+msgstr "{0}% Enviado"
 
 #: accounts/doctype/payment_term/payment_term.js:15
 #, python-format
 msgid "{0}% of total invoice value will be given as discount."
-msgstr ""
+msgstr "{0}% del valor total de la factura se otorgará como descuento."
 
 #: projects/doctype/task/task.py:119
 msgid "{0}'s {1} cannot be after {2}'s Expected End Date."
@@ -81136,7 +81147,7 @@
 
 #: assets/report/fixed_asset_register/fixed_asset_register.py:372
 msgid "{}"
-msgstr ""
+msgstr "{}"
 
 #: controllers/buying_controller.py:712
 msgid "{} Assets created for {}"
@@ -81157,7 +81168,7 @@
 #: accounts/doctype/pos_closing_entry/pos_closing_entry.py:73
 #: accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py:57
 msgid "{} is added multiple times on rows: {}"
-msgstr ""
+msgstr "{} se agrega varias veces en las filas: {}"
 
 #: erpnext_integrations/doctype/tally_migration/tally_migration.py:704
 msgid "{} of {}"
@@ -81166,9 +81177,9 @@
 #: accounts/doctype/party_link/party_link.py:50
 #: accounts/doctype/party_link/party_link.py:60
 msgid "{} {} is already linked with another {}"
-msgstr ""
+msgstr "{} {} ya está vinculado con otro {}"
 
 #: accounts/doctype/party_link/party_link.py:40
 msgid "{} {} is already linked with {} {}"
-msgstr ""
+msgstr "{} {} ya está vinculado con {} {}"
 
diff --git a/erpnext/locale/fa.po b/erpnext/locale/fa.po
index 99fd881..9c062ef 100644
--- a/erpnext/locale/fa.po
+++ b/erpnext/locale/fa.po
@@ -1,20 +1,22 @@
-# Translations template for ERPNext.
-# Copyright (C) 2024 Frappe Technologies Pvt. Ltd.
-# This file is distributed under the same license as the ERPNext project.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
-#
 msgid ""
 msgstr ""
-"Project-Id-Version: ERPNext VERSION\n"
+"Project-Id-Version: frappe\n"
 "Report-Msgid-Bugs-To: info@erpnext.com\n"
 "POT-Creation-Date: 2024-01-29 18:13+0053\n"
-"PO-Revision-Date: 2024-01-29 18:13+0053\n"
+"PO-Revision-Date: 2024-03-04 11:36\n"
 "Last-Translator: info@erpnext.com\n"
-"Language-Team: info@erpnext.com\n"
+"Language-Team: Persian\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Generated-By: Babel 2.13.1\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Crowdin-Project: frappe\n"
+"X-Crowdin-Project-ID: 639578\n"
+"X-Crowdin-Language: fa\n"
+"X-Crowdin-File: /[frappe.erpnext] develop/erpnext/locale/main.pot\n"
+"X-Crowdin-File-ID: 46\n"
+"Language: fa_IR\n"
 
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts_accounts_receivable.html:85
 msgid " "
@@ -48,7 +50,7 @@
 
 #: public/js/bom_configurator/bom_configurator.bundle.js:108
 msgid " Qty"
-msgstr " تعداد"
+msgstr " مقدار"
 
 #: accounts/report/item_wise_sales_register/item_wise_sales_register.py:603
 msgid " Rate"
@@ -61,7 +63,7 @@
 #: public/js/bom_configurator/bom_configurator.bundle.js:127
 #: public/js/bom_configurator/bom_configurator.bundle.js:157
 msgid " Sub Assembly"
-msgstr " مجمع فرعی"
+msgstr " زیر مونتاژ"
 
 #: projects/doctype/project_update/project_update.py:110
 msgid " Summary"
@@ -69,114 +71,93 @@
 
 #: stock/doctype/item/item.py:235
 msgid "\"Customer Provided Item\" cannot be Purchase Item also"
-msgstr ""
+msgstr "\"مورد ارائه شده توسط مشتری\" نمی تواند مورد خرید هم باشد"
 
 #: stock/doctype/item/item.py:237
 msgid "\"Customer Provided Item\" cannot have Valuation Rate"
-msgstr ""
+msgstr "\"مورد ارائه شده توسط مشتری\" نمی تواند دارای نرخ ارزیابی باشد"
 
 #: stock/doctype/item/item.py:313
 msgid "\"Is Fixed Asset\" cannot be unchecked, as Asset record exists against the item"
-msgstr ""
+msgstr "علامت \"دارایی ثابت است\" را نمی توان بردارید، زیرا سابقه دارایی در برابر آیتم وجود دارد"
 
 #. Description of the Onboarding Step 'Accounts Settings'
 #: accounts/onboarding_step/accounts_settings/accounts_settings.json
-msgid ""
-"# Account Settings\n"
-"\n"
-"In ERPNext, Accounting features are configurable as per your business needs. Accounts Settings is the place to define some of your accounting preferences like:\n"
-"\n"
+msgid "# Account Settings\n\n"
+"In ERPNext, Accounting features are configurable as per your business needs. Accounts Settings is the place to define some of your accounting preferences like:\n\n"
 " - Credit Limit and over billing settings\n"
 " - Taxation preferences\n"
 " - Deferred accounting preferences\n"
-msgstr ""
+msgstr "# تنظیمات حساب\n\n"
+"در ERPNext، ویژگی های حسابداری بر اساس نیازهای کسب و کار شما قابل تنظیم هستند. تنظیمات حساب‌ها مکانی برای تعریف برخی از اولویت‌های حسابداری شما است مانند:\n\n"
+" - محدودیت اعتبار و تنظیمات بیش از صورتحساب\n"
+" - اولویت‌های مالیاتی\n"
+" - اولویت‌های حسابداری معوق\n"
 
 #. Description of the Onboarding Step 'Configure Account Settings'
 #: accounts/onboarding_step/configure_account_settings/configure_account_settings.json
-msgid ""
-"# Account Settings\n"
-"\n"
-"This is a crucial piece of configuration. There are various account settings in ERPNext to restrict and configure actions in the Accounting module.\n"
-"\n"
-"The following settings are avaialble for you to configure\n"
-"\n"
+msgid "# Account Settings\n\n"
+"This is a crucial piece of configuration. There are various account settings in ERPNext to restrict and configure actions in the Accounting module.\n\n"
+"The following settings are avaialble for you to configure\n\n"
 "1. Account Freezing \n"
 "2. Credit and Overbilling\n"
 "3. Invoicing and Tax Automations\n"
-"4. Balance Sheet configurations\n"
-"\n"
+"4. Balance Sheet configurations\n\n"
 "There's much more, you can check it all out in this step"
 msgstr ""
 
 #. Description of the Onboarding Step 'Add an Existing Asset'
 #: assets/onboarding_step/existing_asset/existing_asset.json
-msgid ""
-"# Add an Existing Asset\n"
-"\n"
+msgid "# Add an Existing Asset\n\n"
 "If you are just starting with ERPNext, you will need to enter Assets you already possess. You can add them as existing fixed assets in ERPNext. Please note that you will have to make a Journal Entry separately updating the opening balance in the fixed asset account."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create Your First Sales Invoice '
 #: setup/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
-msgid ""
-"# All about sales invoice\n"
-"\n"
+msgid "# All about sales invoice\n\n"
 "A Sales Invoice is a bill that you send to your Customers against which the Customer makes the payment. Sales Invoice is an accounting transaction. On submission of Sales Invoice, the system updates the receivable and books income against a Customer Account."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create Your First Sales Invoice '
 #: accounts/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
-msgid ""
-"# All about sales invoice\n"
-"\n"
-"A Sales Invoice is a bill that you send to your Customers against which the Customer makes the payment. Sales Invoice is an accounting transaction. On submission of Sales Invoice, the system updates the receivable and books income against a Customer Account.\n"
-"\n"
-"Here's the flow of how a sales invoice is generally created\n"
-"\n"
-"\n"
+msgid "# All about sales invoice\n\n"
+"A Sales Invoice is a bill that you send to your Customers against which the Customer makes the payment. Sales Invoice is an accounting transaction. On submission of Sales Invoice, the system updates the receivable and books income against a Customer Account.\n\n"
+"Here's the flow of how a sales invoice is generally created\n\n\n"
 "![Sales Flow](https://docs.erpnext.com/docs/assets/img/accounts/so-flow.png)"
 msgstr ""
 
 #. Description of the Onboarding Step 'Define Asset Category'
 #: assets/onboarding_step/asset_category/asset_category.json
-msgid ""
-"# Asset Category\n"
-"\n"
-"An Asset Category classifies different assets of a Company.\n"
-"\n"
+msgid "# Asset Category\n\n"
+"An Asset Category classifies different assets of a Company.\n\n"
 "You can create an Asset Category based on the type of assets. For example, all your desktops and laptops can be part of an Asset Category named \"Electronic Equipment\". Create a separate category for furniture. Also, you can update default properties for each category, like:\n"
 " - Depreciation type and duration\n"
 " - Fixed asset account\n"
 " - Depreciation account\n"
-msgstr ""
+msgstr "# دسته دارایی\n\n"
+"یک دسته دارایی دارایی های مختلف یک شرکت را طبقه بندی می کند.\n\n"
+"شما می توانید یک دسته دارایی بر اساس نوع دارایی ایجاد کنید. به عنوان مثال، تمام رایانه های رومیزی و لپ تاپ های شما می توانند بخشی از یک دسته دارایی به نام «تجهیزات الکترونیکی» باشند. یک دسته بندی جداگانه برای مبلمان ایجاد کنید. همچنین، می‌توانید ویژگی‌های پیش‌فرض را برای هر دسته به‌روزرسانی کنید، مانند:\n"
+" - نوع و مدت استهلاک\n"
+" - حساب دارایی ثابت\n"
+" - حساب استهلاک\n"
 
 #. Description of the Onboarding Step 'Create an Asset Item'
 #: assets/onboarding_step/asset_item/asset_item.json
-msgid ""
-"# Asset Item\n"
-"\n"
+msgid "# Asset Item\n\n"
 "Asset items are created based on Asset Category. You can create one or multiple items against once Asset Category. The sales and purchase transaction for Asset is done via Asset Item. "
 msgstr ""
 
 #. Description of the Onboarding Step 'Buying Settings'
 #: buying/onboarding_step/introduction_to_buying/introduction_to_buying.json
-msgid ""
-"# Buying Settings\n"
-"\n"
-"\n"
-"Buying module’s features are highly configurable as per your business needs. Buying Settings is the place where you can set your preferences for:\n"
-"\n"
+msgid "# Buying Settings\n\n\n"
+"Buying module’s features are highly configurable as per your business needs. Buying Settings is the place where you can set your preferences for:\n\n"
 "- Supplier naming and default values\n"
-"- Billing and shipping preference in buying transactions\n"
-"\n"
-"\n"
+"- Billing and shipping preference in buying transactions\n\n\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'CRM Settings'
 #: crm/onboarding_step/crm_settings/crm_settings.json
-msgid ""
-"# CRM Settings\n"
-"\n"
+msgid "# CRM Settings\n\n"
 "CRM module’s features are configurable as per your business needs. CRM Settings is the place where you can set your preferences for:\n"
 "- Campaign\n"
 "- Lead\n"
@@ -186,9 +167,7 @@
 
 #. Description of the Onboarding Step 'Review Chart of Accounts'
 #: accounts/onboarding_step/chart_of_accounts/chart_of_accounts.json
-msgid ""
-"# Chart Of Accounts\n"
-"\n"
+msgid "# Chart Of Accounts\n\n"
 "ERPNext sets up a simple chart of accounts for each Company you create, but you can modify it according to business and legal requirements."
 msgstr ""
 
@@ -196,62 +175,46 @@
 #. Description of the Onboarding Step 'Check Stock Projected Qty'
 #: stock/onboarding_step/check_stock_ledger_report/check_stock_ledger_report.json
 #: stock/onboarding_step/view_stock_projected_qty/view_stock_projected_qty.json
-msgid ""
-"# Check Stock Reports\n"
+msgid "# Check Stock Reports\n"
 "Based on the various stock transactions, you can get a host of one-click Stock Reports in ERPNext like Stock Ledger, Stock Balance, Projected Quantity, and Ageing analysis."
 msgstr ""
 
 #. Description of the Onboarding Step 'Cost Centers for Budgeting and Analysis'
 #: accounts/onboarding_step/cost_centers_for_report_and_budgeting/cost_centers_for_report_and_budgeting.json
-msgid ""
-"# Cost Centers for Budgeting and Analysis\n"
-"\n"
-"While your Books of Accounts are framed to fulfill statutory requirements, you can set up Cost Center and Accounting Dimensions to address your companies reporting and budgeting requirements.\n"
-"\n"
+msgid "# Cost Centers for Budgeting and Analysis\n\n"
+"While your Books of Accounts are framed to fulfill statutory requirements, you can set up Cost Center and Accounting Dimensions to address your companies reporting and budgeting requirements.\n\n"
 "Click here to learn more about how  <b>[Cost Center](https://docs.erpnext.com/docs/v13/user/manual/en/accounts/cost-center)</b> and <b> [Dimensions](https://docs.erpnext.com/docs/v13/user/manual/en/accounts/accounting-dimensions)</b> allow you to get advanced financial analytics reports from ERPNext."
 msgstr ""
 
 #. Description of the Onboarding Step 'Finished Items'
 #: manufacturing/onboarding_step/create_product/create_product.json
-msgid ""
-"# Create Items for Bill of Materials\n"
-"\n"
+msgid "# Create Items for Bill of Materials\n\n"
 "One of the prerequisites of a BOM is the creation of raw materials, sub-assembly, and finished items. Once these items are created, you will be able to proceed to the Bill of Materials master, which is composed of items and routing.\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Operation'
 #: manufacturing/onboarding_step/operation/operation.json
-msgid ""
-"# Create Operations\n"
-"\n"
+msgid "# Create Operations\n\n"
 "An Operation refers to any manufacturing operation performed on the raw materials to process it further in the manufacturing path. As an example, if you are into garments manufacturing, you will create Operations like fabric cutting, stitching, and washing as some of the operations."
 msgstr ""
 
 #. Description of the Onboarding Step 'Workstation'
 #: manufacturing/onboarding_step/workstation/workstation.json
-msgid ""
-"# Create Workstations\n"
-"\n"
+msgid "# Create Workstations\n\n"
 "A Workstation stores information regarding the place where the workstation operations are performed. As an example, if you have ten sewing machines doing stitching jobs, each machine will be added as a workstation."
 msgstr ""
 
 #. Description of the Onboarding Step 'Bill of Materials'
 #: manufacturing/onboarding_step/create_bom/create_bom.json
-msgid ""
-"# Create a Bill of Materials\n"
-"\n"
-"A Bill of Materials (BOM) is a list of items and sub-assemblies with quantities required to manufacture an Item.\n"
-"\n"
+msgid "# Create a Bill of Materials\n\n"
+"A Bill of Materials (BOM) is a list of items and sub-assemblies with quantities required to manufacture an Item.\n\n"
 "BOM also provides cost estimation for the production of the item. It takes raw-materials cost based on valuation and operations to cost based on routing, which gives total costing for a BOM."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create a Customer'
 #: setup/onboarding_step/create_a_customer/create_a_customer.json
-msgid ""
-"# Create a Customer\n"
-"\n"
-"The Customer master is at the heart of your sales transactions. Customers are linked in Quotations, Sales Orders, Invoices, and Payments. Customers can be either numbered or identified by name (you would typically do this based on the number of customers you have).\n"
-"\n"
+msgid "# Create a Customer\n\n"
+"The Customer master is at the heart of your sales transactions. Customers are linked in Quotations, Sales Orders, Invoices, and Payments. Customers can be either numbered or identified by name (you would typically do this based on the number of customers you have).\n\n"
 "Through Customer’s master, you can effectively track essentials like:\n"
 " - Customer’s multiple address and contacts\n"
 " - Account Receivables\n"
@@ -260,27 +223,20 @@
 
 #. Description of the Onboarding Step 'Setup Your Letterhead'
 #: setup/onboarding_step/letterhead/letterhead.json
-msgid ""
-"# Create a Letter Head\n"
-"\n"
+msgid "# Create a Letter Head\n\n"
 "A Letter Head contains your organization's name, logo, address, etc which appears at the header and footer portion in documents. You can learn more about Setting up Letter Head in ERPNext here.\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Create your first Quotation'
 #: setup/onboarding_step/create_a_quotation/create_a_quotation.json
-msgid ""
-"# Create a Quotation\n"
-"\n"
+msgid "# Create a Quotation\n\n"
 "Let’s get started with business transactions by creating your first Quotation. You can create a Quotation for an existing customer or a prospect. It will be an approved document, with items you sell and the proposed price + taxes applied. After completing the instructions, you will get a Quotation in a ready to share print format."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create a Supplier'
 #: setup/onboarding_step/create_a_supplier/create_a_supplier.json
-msgid ""
-"# Create a Supplier\n"
-"\n"
-"Also known as Vendor, is a master at the center of your purchase transactions. Suppliers are linked in Request for Quotation, Purchase Orders, Receipts, and Payments. Suppliers can be either numbered or identified by name.\n"
-"\n"
+msgid "# Create a Supplier\n\n"
+"Also known as Vendor, is a master at the center of your purchase transactions. Suppliers are linked in Request for Quotation, Purchase Orders, Receipts, and Payments. Suppliers can be either numbered or identified by name.\n\n"
 "Through Supplier’s master, you can effectively track essentials like:\n"
 " - Supplier’s multiple address and contacts\n"
 " - Account Receivables\n"
@@ -289,20 +245,15 @@
 
 #. Description of the Onboarding Step 'Create a Supplier'
 #: stock/onboarding_step/create_a_supplier/create_a_supplier.json
-msgid ""
-"# Create a Supplier\n"
+msgid "# Create a Supplier\n"
 "In this step we will create a **Supplier**. If you have already created a **Supplier** you can skip this step."
 msgstr ""
 
 #. Description of the Onboarding Step 'Work Order'
 #: manufacturing/onboarding_step/work_order/work_order.json
-msgid ""
-"# Create a Work Order\n"
-"\n"
-"A Work Order or a Job order is given to the manufacturing shop floor by the Production Manager to initiate the manufacturing of a certain quantity of an item. Work Order carriers details of production Item, its BOM, quantities to be manufactured, and operations.\n"
-"\n"
-"Through Work Order, you can track various production status like:\n"
-"\n"
+msgid "# Create a Work Order\n\n"
+"A Work Order or a Job order is given to the manufacturing shop floor by the Production Manager to initiate the manufacturing of a certain quantity of an item. Work Order carriers details of production Item, its BOM, quantities to be manufactured, and operations.\n\n"
+"Through Work Order, you can track various production status like:\n\n"
 "- Issue of raw-material to shop material\n"
 "- Progress on each Workstation via Job Card\n"
 "- Manufactured Quantity against Work Order\n"
@@ -310,57 +261,41 @@
 
 #. Description of the Onboarding Step 'Create an Item'
 #: setup/onboarding_step/create_an_item/create_an_item.json
-msgid ""
-"# Create an Item\n"
-"\n"
-"Item is a product or a service offered by your company, or something you buy as a part of your supplies or raw materials.\n"
-"\n"
+msgid "# Create an Item\n\n"
+"Item is a product or a service offered by your company, or something you buy as a part of your supplies or raw materials.\n\n"
 "Items are integral to everything you do in ERPNext - from billing, purchasing to managing inventory. Everything you buy or sell, whether it is a physical product or a service is an Item. Items can be stock, non-stock, variants, serialized, batched, assets, etc.\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Create an Item'
 #: stock/onboarding_step/create_an_item/create_an_item.json
-msgid ""
-"# Create an Item\n"
-"The Stock module deals with the movement of items.\n"
-"\n"
+msgid "# Create an Item\n"
+"The Stock module deals with the movement of items.\n\n"
 "In this step we will create an  [**Item**](https://docs.erpnext.com/docs/user/manual/en/stock/item)."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create first Purchase Order'
 #: buying/onboarding_step/create_your_first_purchase_order/create_your_first_purchase_order.json
-msgid ""
-"# Create first Purchase Order\n"
-"\n"
-"Purchase Order is at the heart of your buying transactions. In ERPNext, Purchase Order can can be created against a Purchase Material Request (indent) and Supplier Quotation as well.  Purchase Orders is also linked to Purchase Receipt and Purchase Invoices, allowing you to keep a birds-eye view on your purchase deals.\n"
-"\n"
+msgid "# Create first Purchase Order\n\n"
+"Purchase Order is at the heart of your buying transactions. In ERPNext, Purchase Order can can be created against a Purchase Material Request (indent) and Supplier Quotation as well.  Purchase Orders is also linked to Purchase Receipt and Purchase Invoices, allowing you to keep a birds-eye view on your purchase deals.\n\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Create Your First Purchase Invoice '
 #: accounts/onboarding_step/create_your_first_purchase_invoice/create_your_first_purchase_invoice.json
-msgid ""
-"# Create your first Purchase Invoice\n"
-"\n"
-"A Purchase Invoice is a bill received from a Supplier for a product(s) or service(s) delivery to your company. You can track payables through Purchase Invoice and process Payment Entries against it.\n"
-"\n"
+msgid "# Create your first Purchase Invoice\n\n"
+"A Purchase Invoice is a bill received from a Supplier for a product(s) or service(s) delivery to your company. You can track payables through Purchase Invoice and process Payment Entries against it.\n\n"
 "Purchase Invoices can also be created against a Purchase Order or Purchase Receipt."
 msgstr ""
 
 #. Description of the Onboarding Step 'Financial Statements'
 #: accounts/onboarding_step/financial_statements/financial_statements.json
-msgid ""
-"# Financial Statements\n"
-"\n"
-"In ERPNext, you can get crucial financial reports like [Balance Sheet] and [Profit and Loss] statements with a click of a button. You can run in the report for a different period and plot analytics charts premised on statement data. For more reports, check sections like Financial Statements, General Ledger, and Profitability reports.\n"
-"\n"
+msgid "# Financial Statements\n\n"
+"In ERPNext, you can get crucial financial reports like [Balance Sheet] and [Profit and Loss] statements with a click of a button. You can run in the report for a different period and plot analytics charts premised on statement data. For more reports, check sections like Financial Statements, General Ledger, and Profitability reports.\n\n"
 "<b>[Check Accounting reports](https://docs.erpnext.com/docs/v13/user/manual/en/accounts/accounting-reports)</b>"
 msgstr ""
 
 #. Description of the Onboarding Step 'Review Fixed Asset Accounts'
 #: assets/onboarding_step/fixed_asset_accounts/fixed_asset_accounts.json
-msgid ""
-"# Fixed Asset Accounts\n"
-"\n"
+msgid "# Fixed Asset Accounts\n\n"
 "With the company, a host of fixed asset accounts are pre-configured. To ensure your asset transactions are leading to correct accounting entries, you can review and set up following asset accounts as per your business  requirements.\n"
 " - Fixed asset accounts (Asset account)\n"
 " - Accumulated depreciation\n"
@@ -370,67 +305,54 @@
 
 #. Description of the Onboarding Step 'Production Planning'
 #: manufacturing/onboarding_step/production_planning/production_planning.json
-msgid ""
-"# How Production Planning Works\n"
-"\n"
+msgid "# How Production Planning Works\n\n"
 "Production Plan helps in production and material planning for the Items planned for manufacturing. These production items can be committed via Sales Order (to Customers) or Material Requests (internally).\n"
-msgstr ""
+msgstr "# برنامه ریزی تولید چگونه کار می کند\n\n"
+"برنامه تولید به برنامه ریزی تولید و مواد برای آیتم‌های برنامه ریزی شده برای ساخت کمک می کند. این آیتم‌های تولیدی را می توان از طریق سفارش فروش (به مشتریان) یا درخواست مواد (داخلی) متعهد شد.\n"
 
 #. Description of the Onboarding Step 'Import Data from Spreadsheet'
 #: setup/onboarding_step/data_import/data_import.json
-msgid ""
-"# Import Data from Spreadsheet\n"
-"\n"
+msgid "# Import Data from Spreadsheet\n\n"
 "In ERPNext, you can easily migrate your historical data using spreadsheets. You can use it for migrating not just masters (like Customer, Supplier, Items), but also for transactions like (outstanding invoices, opening stock and accounting entries, etc)."
 msgstr ""
 
 #: manufacturing/report/work_order_stock_report/work_order_stock_report.py:148
 msgid "# In Stock"
-msgstr "# در انبار"
+msgstr "# در موجودی"
 
 #. Description of the Onboarding Step 'Introduction to Stock Entry'
 #: stock/onboarding_step/introduction_to_stock_entry/introduction_to_stock_entry.json
-msgid ""
-"# Introduction to Stock Entry\n"
+msgid "# Introduction to Stock Entry\n"
 "This video will give a quick introduction to [**Stock Entry**](https://docs.erpnext.com/docs/user/manual/en/stock/stock-entry)."
 msgstr ""
 
 #. Description of the Onboarding Step 'Manage Stock Movements'
 #: stock/onboarding_step/create_a_stock_entry/create_a_stock_entry.json
-msgid ""
-"# Manage Stock Movements\n"
-"Stock entry allows you to register the movement of stock for various purposes like transfer, received, issues, repacked, etc. To address issues related to theft and pilferages,  you can always ensure that the movement of goods happens against a document reference Stock Entry in ERPNext.\n"
-"\n"
+msgid "# Manage Stock Movements\n"
+"Stock entry allows you to register the movement of stock for various purposes like transfer, received, issues, repacked, etc. To address issues related to theft and pilferages,  you can always ensure that the movement of goods happens against a document reference Stock Entry in ERPNext.\n\n"
 "Let’s get a quick walk-through on the various scenarios covered in Stock Entry by watching [*this video*](https://www.youtube.com/watch?v=Njt107hlY3I)."
 msgstr ""
 
 #. Description of the Onboarding Step 'How to Navigate in ERPNext'
 #: setup/onboarding_step/navigation_help/navigation_help.json
-msgid ""
-"# Navigation in ERPNext\n"
-"\n"
+msgid "# Navigation in ERPNext\n\n"
 "Ease of navigating and browsing around the ERPNext is one of our core strengths. In the following video, you will learn how to reach a specific feature in ERPNext via module page or AwesomeBar."
 msgstr ""
 
 #. Description of the Onboarding Step 'Purchase an Asset'
 #: assets/onboarding_step/asset_purchase/asset_purchase.json
-msgid ""
-"# Purchase an Asset\n"
-"\n"
+msgid "# Purchase an Asset\n\n"
 "Assets purchases process if done following the standard Purchase cycle. If capital work in progress is enabled in Asset Category, Asset will be created as soon as Purchase Receipt is created for it. You can quickly create a Purchase Receipt for Asset and see its impact on books of accounts."
 msgstr ""
 
 #: manufacturing/report/work_order_stock_report/work_order_stock_report.py:141
 msgid "# Req'd Items"
-msgstr "# موارد درخواست شده"
+msgstr "# آیتم‌های درخواست شده"
 
 #. Description of the Onboarding Step 'Manufacturing Settings'
 #: manufacturing/onboarding_step/explore_manufacturing_settings/explore_manufacturing_settings.json
-msgid ""
-"# Review Manufacturing Settings\n"
-"\n"
-"In ERPNext, the Manufacturing module’s features are configurable as per your business needs. Manufacturing Settings is the place where you can set your preferences for:\n"
-"\n"
+msgid "# Review Manufacturing Settings\n\n"
+"In ERPNext, the Manufacturing module’s features are configurable as per your business needs. Manufacturing Settings is the place where you can set your preferences for:\n\n"
 "- Capacity planning for allocating jobs to workstations\n"
 "- Raw-material consumption based on BOM or actual\n"
 "- Default values and over-production allowance\n"
@@ -438,9 +360,7 @@
 
 #. Description of the Onboarding Step 'Review Stock Settings'
 #: stock/onboarding_step/stock_settings/stock_settings.json
-msgid ""
-"# Review Stock Settings\n"
-"\n"
+msgid "# Review Stock Settings\n\n"
 "In ERPNext, the Stock module’s features are configurable as per your business needs. Stock Settings is the place where you can set your preferences for:\n"
 "- Default values for Item and Pricing\n"
 "- Default valuation method for inventory valuation\n"
@@ -450,19 +370,14 @@
 
 #. Description of the Onboarding Step 'Sales Order'
 #: selling/onboarding_step/sales_order/sales_order.json
-msgid ""
-"# Sales Order\n"
-"\n"
-"A Sales Order is a confirmation of an order from your customer. It is also referred to as Proforma Invoice.\n"
-"\n"
+msgid "# Sales Order\n\n"
+"A Sales Order is a confirmation of an order from your customer. It is also referred to as Proforma Invoice.\n\n"
 "Sales Order at the heart of your sales and purchase transactions. Sales Orders are linked in Delivery Note, Sales Invoices, Material Request, and Maintenance transactions. Through Sales Order, you can track fulfillment of the overall deal towards the customer."
 msgstr ""
 
 #. Description of the Onboarding Step 'Selling Settings'
 #: selling/onboarding_step/selling_settings/selling_settings.json
-msgid ""
-"# Selling Settings\n"
-"\n"
+msgid "# Selling Settings\n\n"
 "CRM and Selling module’s features are configurable as per your business needs. Selling Settings is the place where you can set your preferences for:\n"
 " - Customer naming and default values\n"
 " - Billing and shipping preference in sales transactions\n"
@@ -470,109 +385,78 @@
 
 #. Description of the Onboarding Step 'Set Up a Company'
 #: setup/onboarding_step/company_set_up/company_set_up.json
-msgid ""
-"# Set Up a Company\n"
-"\n"
-"A company is a legal entity for which you will set up your books of account and create accounting transactions. In ERPNext, you can create multiple companies, and establish relationships (group/subsidiary) among them.\n"
-"\n"
+msgid "# Set Up a Company\n\n"
+"A company is a legal entity for which you will set up your books of account and create accounting transactions. In ERPNext, you can create multiple companies, and establish relationships (group/subsidiary) among them.\n\n"
 "Within the company master, you can capture various default accounts for that Company and set crucial settings related to the accounting methodology followed for a company.\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Setting up Taxes'
 #: accounts/onboarding_step/setup_taxes/setup_taxes.json
-msgid ""
-"# Setting up Taxes\n"
-"\n"
+msgid "# Setting up Taxes\n\n"
 "ERPNext lets you configure your taxes so that they are automatically applied in your buying and selling transactions. You can configure them globally or even on Items. ERPNext taxes are pre-configured for most regions."
 msgstr ""
 
 #. Description of the Onboarding Step 'Routing'
 #: manufacturing/onboarding_step/routing/routing.json
-msgid ""
-"# Setup Routing\n"
-"\n"
+msgid "# Setup Routing\n\n"
 "A Routing stores all Operations along with the description, hourly rate, operation time, batch size, etc. Click below to learn how the Routing template can be created, for quick selection in the BOM."
 msgstr ""
 
 #. Description of the Onboarding Step 'Setup a Warehouse'
 #: stock/onboarding_step/create_a_warehouse/create_a_warehouse.json
-msgid ""
-"# Setup a Warehouse\n"
-"The warehouse can be your location/godown/store where you maintain the item's inventory, and receive/deliver them to various parties.\n"
-"\n"
+msgid "# Setup a Warehouse\n"
+"The warehouse can be your location/godown/store where you maintain the item's inventory, and receive/deliver them to various parties.\n\n"
 "In ERPNext, you can maintain a Warehouse in the tree structure, so that location and sub-location of an item can be tracked. Also, you can link a Warehouse to a specific Accounting ledger, where the real-time stock value of that warehouse’s item will be reflected."
 msgstr ""
 
 #. Description of the Onboarding Step 'Track Material Request'
 #: buying/onboarding_step/create_a_material_request/create_a_material_request.json
-msgid ""
-"# Track Material Request\n"
-"\n"
-"\n"
-"Also known as Purchase Request or an Indent, is a document identifying a requirement of a set of items (products or services) for various purposes like procurement, transfer, issue, or manufacturing. Once the Material Request is validated, a purchase manager can take the next actions for purchasing items like requesting RFQ from a supplier or directly placing an order with an identified Supplier.\n"
-"\n"
+msgid "# Track Material Request\n\n\n"
+"Also known as Purchase Request or an Indent, is a document identifying a requirement of a set of items (products or services) for various purposes like procurement, transfer, issue, or manufacturing. Once the Material Request is validated, a purchase manager can take the next actions for purchasing items like requesting RFQ from a supplier or directly placing an order with an identified Supplier.\n\n"
 msgstr ""
 
 #. Description of the Onboarding Step 'Update Stock Opening Balance'
 #: stock/onboarding_step/stock_opening_balance/stock_opening_balance.json
-msgid ""
-"# Update Stock Opening Balance\n"
-"It’s an entry to update the stock balance of an item, in a warehouse, on a date and time you are going live on ERPNext.\n"
-"\n"
+msgid "# Update Stock Opening Balance\n"
+"It’s an entry to update the stock balance of an item, in a warehouse, on a date and time you are going live on ERPNext.\n\n"
 "Once opening stocks are updated, you can create transactions like manufacturing and stock deliveries, where this opening stock will be consumed."
 msgstr ""
 
 #. Description of the Onboarding Step 'Updating Opening Balances'
 #: accounts/onboarding_step/updating_opening_balances/updating_opening_balances.json
-msgid ""
-"# Updating Opening Balances\n"
-"\n"
+msgid "# Updating Opening Balances\n\n"
 "Once you close the financial statement in previous accounting software, you can update the same as opening in your ERPNext's Balance Sheet accounts. This will allow you to get complete financial statements from ERPNext in the coming years, and discontinue the parallel accounting system right away."
 msgstr ""
 
 #. Description of the Onboarding Step 'View Warehouses'
 #: stock/onboarding_step/view_warehouses/view_warehouses.json
-msgid ""
-"# View Warehouse\n"
-"In ERPNext the term 'warehouse' can be thought of as a storage location.\n"
-"\n"
-"Warehouses are arranged in ERPNext in a tree like structure, where multiple sub-warehouses can be grouped under a single warehouse.\n"
-"\n"
+msgid "# View Warehouse\n"
+"In ERPNext the term 'warehouse' can be thought of as a storage location.\n\n"
+"Warehouses are arranged in ERPNext in a tree like structure, where multiple sub-warehouses can be grouped under a single warehouse.\n\n"
 "In this step we will view the [**Warehouse Tree**](https://docs.erpnext.com/docs/user/manual/en/stock/warehouse#21-tree-view) to view the [**Warehouses**](https://docs.erpnext.com/docs/user/manual/en/stock/warehouse) that are set by default."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create a Sales Item'
 #: accounts/onboarding_step/create_a_product/create_a_product.json
-msgid ""
-"## Products and Services\n"
-"\n"
+msgid "## Products and Services\n\n"
 "Depending on the nature of your business, you might be selling products or services to your clients or even both. \n"
-"ERPNext is optimized for itemized management of your sales and purchase.\n"
-"\n"
-"The **Item Master**  is where you can add all your sales items. If you are in services, you can create an Item for each service that you offer. If you run a manufacturing business, the same master is used for keeping a record of raw materials, sub-assemblies etc.\n"
-"\n"
+"ERPNext is optimized for itemized management of your sales and purchase.\n\n"
+"The **Item Master**  is where you can add all your sales items. If you are in services, you can create an Item for each service that you offer. If you run a manufacturing business, the same master is used for keeping a record of raw materials, sub-assemblies etc.\n\n"
 "Completing the Item Master is very essential for the successful implementation of ERPNext. We have a brief video introducing the item master for you, you can watch it in the next step."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create a Customer'
 #: accounts/onboarding_step/create_a_customer/create_a_customer.json
-msgid ""
-"## Who is a Customer?\n"
-"\n"
-"A customer, who is sometimes known as a client, buyer, or purchaser is the one who receives goods, services, products, or ideas, from a seller for a monetary consideration.\n"
-"\n"
-"Every customer needs to be assigned a unique id. Customer name itself can be the id or you can set a naming series for ids to be generated in Selling Settings.\n"
-"\n"
+msgid "## Who is a Customer?\n\n"
+"A customer, who is sometimes known as a client, buyer, or purchaser is the one who receives goods, services, products, or ideas, from a seller for a monetary consideration.\n\n"
+"Every customer needs to be assigned a unique id. Customer name itself can be the id or you can set a naming series for ids to be generated in Selling Settings.\n\n"
 "Just like the supplier, let's quickly create a customer."
 msgstr ""
 
 #. Description of the Onboarding Step 'Create a Supplier'
 #: accounts/onboarding_step/create_a_supplier/create_a_supplier.json
-msgid ""
-"## Who is a Supplier?\n"
-"\n"
-"Suppliers are companies or individuals who provide you with products or services. ERPNext has comprehensive features for purchase cycles. \n"
-"\n"
+msgid "## Who is a Supplier?\n\n"
+"Suppliers are companies or individuals who provide you with products or services. ERPNext has comprehensive features for purchase cycles. \n\n"
 "Let's quickly create a supplier with the minimal details required. You need the name of the supplier, assign the supplier to a group, and select the type of the supplier, viz. Company or Individual."
 msgstr ""
 
@@ -739,7 +623,7 @@
 
 #: stock/report/product_bundle_balance/product_bundle_balance.py:232
 msgid "'Date' is required"
-msgstr "تاریخ الزامی است"
+msgstr "'تاریخ' الزامی است"
 
 #: selling/report/inactive_customers/inactive_customers.py:18
 msgid "'Days Since Last Order' must be greater than or equal to zero"
@@ -775,7 +659,7 @@
 #: stock/report/batch_wise_balance_history/batch_wise_balance_history.py:101
 #: stock/report/stock_analytics/stock_analytics.py:326
 msgid "'To Date' is required"
-msgstr "تا به امروز مورد نیاز است"
+msgstr "«تا تاریخ» مورد نیاز است"
 
 #: stock/doctype/packing_slip/packing_slip.py:96
 msgid "'To Package No.' cannot be less than 'From Package No.'"
@@ -909,19 +793,19 @@
 #: crm/doctype/lead/lead.json
 msgctxt "Lead"
 msgid "1-10"
-msgstr ""
+msgstr "1-10"
 
 #. Option for the 'No of Employees' (Select) field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "1-10"
-msgstr ""
+msgstr "1-10"
 
 #. Option for the 'No. of Employees' (Select) field in DocType 'Prospect'
 #: crm/doctype/prospect/prospect.json
 msgctxt "Prospect"
 msgid "1-10"
-msgstr ""
+msgstr "1-10"
 
 #. Option for the 'No of Employees' (Select) field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
@@ -962,7 +846,7 @@
 #: regional/report/uae_vat_201/uae_vat_201.py:99
 #: regional/report/uae_vat_201/uae_vat_201.py:105
 msgid "1{0}"
-msgstr "1{0}"
+msgstr ""
 
 #. Option for the 'Periodicity' (Select) field in DocType 'Asset Maintenance
 #. Task'
@@ -1004,7 +888,7 @@
 
 #: accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.py:119
 msgid "30-60"
-msgstr "30-60"
+msgstr ""
 
 #: manufacturing/report/work_order_summary/work_order_summary.py:110
 msgid "30-60 Days"
@@ -1054,7 +938,7 @@
 
 #: accounts/report/payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.py:120
 msgid "60-90"
-msgstr "60-90"
+msgstr ""
 
 #: manufacturing/report/work_order_summary/work_order_summary.py:110
 msgid "60-90 Days"
@@ -1074,8 +958,7 @@
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json
 #, python-format
 msgctxt "Process Statement Of Accounts"
-msgid ""
-"<br>\n"
+msgid "<br>\n"
 "<h4>Note</h4>\n"
 "<ul>\n"
 "<li>\n"
@@ -1115,13 +998,12 @@
 
 #: public/js/bank_reconciliation_tool/dialog_manager.js:258
 msgid "<div class=\"text-muted text-center\">{0}</div>"
-msgstr "<div class=\"text-muted text-center\">{0}</div>"
+msgstr ""
 
 #. Content of the 'settings' (HTML) field in DocType 'Cheque Print Template'
 #: accounts/doctype/cheque_print_template/cheque_print_template.json
 msgctxt "Cheque Print Template"
-msgid ""
-"<div>\n"
+msgid "<div>\n"
 "<h3> All dimensions in centimeter only </h3>\n"
 "</div>"
 msgstr ""
@@ -1129,9 +1011,7 @@
 #. Content of the 'about' (HTML) field in DocType 'Product Bundle'
 #: selling/doctype/product_bundle/product_bundle.json
 msgctxt "Product Bundle"
-msgid ""
-"<h3>About Product Bundle</h3>\n"
-"\n"
+msgid "<h3>About Product Bundle</h3>\n\n"
 "<p>Aggregate group of <b>Items</b> into another <b>Item</b>. This is useful if you are bundling a certain <b>Items</b> into a package and you maintain stock of the packed <b>Items</b> and not the aggregate <b>Item</b>.</p>\n"
 "<p>The package <b>Item</b> will have <code>Is Stock Item</code> as <b>No</b> and <code>Is Sales Item</code> as <b>Yes</b>.</p>\n"
 "<h4>Example:</h4>\n"
@@ -1141,8 +1021,7 @@
 #. Content of the 'Help' (HTML) field in DocType 'Currency Exchange Settings'
 #: accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
 msgctxt "Currency Exchange Settings"
-msgid ""
-"<h3>Currency Exchange Settings Help</h3>\n"
+msgid "<h3>Currency Exchange Settings Help</h3>\n"
 "<p>There are 3 variables that could be used within the endpoint, result key and in values of the parameter.</p>\n"
 "<p>Exchange rate between {from_currency} and {to_currency} on {transaction_date} is fetched by the API.</p>\n"
 "<p>Example: If your endpoint is exchange.com/2021-08-01, then, you will have to input exchange.com/{transaction_date}</p>"
@@ -1152,17 +1031,11 @@
 #. Letter Text'
 #: accounts/doctype/dunning_letter_text/dunning_letter_text.json
 msgctxt "Dunning Letter Text"
-msgid ""
-"<h4>Body Text and Closing Text Example</h4>\n"
-"\n"
-"<div>We have noticed that you have not yet paid invoice {{sales_invoice}} for {{frappe.db.get_value(\"Currency\", currency, \"symbol\")}} {{outstanding_amount}}. This is a friendly reminder that the invoice was due on {{due_date}}. Please pay the amount due immediately to avoid any further dunning cost.</div>\n"
-"\n"
-"<h4>How to get fieldnames</h4>\n"
-"\n"
-"<p>The fieldnames you can use in your template are the fields in the document. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Sales Invoice)</p>\n"
-"\n"
-"<h4>Templating</h4>\n"
-"\n"
+msgid "<h4>Body Text and Closing Text Example</h4>\n\n"
+"<div>We have noticed that you have not yet paid invoice {{sales_invoice}} for {{frappe.db.get_value(\"Currency\", currency, \"symbol\")}} {{outstanding_amount}}. This is a friendly reminder that the invoice was due on {{due_date}}. Please pay the amount due immediately to avoid any further dunning cost.</div>\n\n"
+"<h4>How to get fieldnames</h4>\n\n"
+"<p>The fieldnames you can use in your template are the fields in the document. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Sales Invoice)</p>\n\n"
+"<h4>Templating</h4>\n\n"
 "<p>Templates are compiled using the Jinja Templating Language. To learn more about Jinja, <a class=\"strong\" href=\"http://jinja.pocoo.org/docs/dev/templates/\">read this documentation.</a></p>"
 msgstr ""
 
@@ -1170,21 +1043,14 @@
 #. Template'
 #: crm/doctype/contract_template/contract_template.json
 msgctxt "Contract Template"
-msgid ""
-"<h4>Contract Template Example</h4>\n"
-"\n"
-"<pre>Contract for Customer {{ party_name }}\n"
-"\n"
+msgid "<h4>Contract Template Example</h4>\n\n"
+"<pre>Contract for Customer {{ party_name }}\n\n"
 "-Valid From : {{ start_date }} \n"
 "-Valid To : {{ end_date }}\n"
-"</pre>\n"
-"\n"
-"<h4>How to get fieldnames</h4>\n"
-"\n"
-"<p>The field names you can use in your Contract Template are the fields in the Contract for which you are creating the template. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Contract)</p>\n"
-"\n"
-"<h4>Templating</h4>\n"
-"\n"
+"</pre>\n\n"
+"<h4>How to get fieldnames</h4>\n\n"
+"<p>The field names you can use in your Contract Template are the fields in the Contract for which you are creating the template. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Contract)</p>\n\n"
+"<h4>Templating</h4>\n\n"
 "<p>Templates are compiled using the Jinja Templating Language. To learn more about Jinja, <a class=\"strong\" href=\"http://jinja.pocoo.org/docs/dev/templates/\">read this documentation.</a></p>"
 msgstr ""
 
@@ -1192,21 +1058,14 @@
 #. and Conditions'
 #: setup/doctype/terms_and_conditions/terms_and_conditions.json
 msgctxt "Terms and Conditions"
-msgid ""
-"<h4>Standard Terms and Conditions Example</h4>\n"
-"\n"
-"<pre>Delivery Terms for Order number {{ name }}\n"
-"\n"
+msgid "<h4>Standard Terms and Conditions Example</h4>\n\n"
+"<pre>Delivery Terms for Order number {{ name }}\n\n"
 "-Order Date : {{ transaction_date }} \n"
 "-Expected Delivery Date : {{ delivery_date }}\n"
-"</pre>\n"
-"\n"
-"<h4>How to get fieldnames</h4>\n"
-"\n"
-"<p>The fieldnames you can use in your email template are the fields in the document from which you are sending the email. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Sales Invoice)</p>\n"
-"\n"
-"<h4>Templating</h4>\n"
-"\n"
+"</pre>\n\n"
+"<h4>How to get fieldnames</h4>\n\n"
+"<p>The fieldnames you can use in your email template are the fields in the document from which you are sending the email. You can find out the fields of any documents via Setup &gt; Customize Form View and selecting the document type (e.g. Sales Invoice)</p>\n\n"
+"<h4>Templating</h4>\n\n"
 "<p>Templates are compiled using the Jinja Templating Language. To learn more about Jinja, <a class=\"strong\" href=\"http://jinja.pocoo.org/docs/dev/templates/\">read this documentation.</a></p>"
 msgstr ""
 
@@ -1227,7 +1086,7 @@
 #: accounts/doctype/cheque_print_template/cheque_print_template.json
 msgctxt "Cheque Print Template"
 msgid "<label class=\"control-label\" style=\"margin-bottom: 0px;\">Amount In Words</label>"
-msgstr "<label class=\"control-label\" style=\"margin-bottom: 0px;\">مقدار در کلمات</label>"
+msgstr "<label class=\"control-label\" style=\"margin-bottom: 0px;\">مقدار به حروف</label>"
 
 #. Content of the 'Date Settings' (HTML) field in DocType 'Cheque Print
 #. Template'
@@ -1239,8 +1098,7 @@
 #. Content of the 'html_llwp' (HTML) field in DocType 'Request for Quotation'
 #: buying/doctype/request_for_quotation/request_for_quotation.json
 msgctxt "Request for Quotation"
-msgid ""
-"<p>In your <b>Email Template</b>, you can use the following special variables:\n"
+msgid "<p>In your <b>Email Template</b>, you can use the following special variables:\n"
 "</p>\n"
 "<ul>\n"
 "        <li>\n"
@@ -1266,40 +1124,28 @@
 #. Account'
 #: accounts/doctype/payment_gateway_account/payment_gateway_account.json
 msgctxt "Payment Gateway Account"
-msgid ""
-"<pre><h5>Message Example</h5>\n"
-"\n"
-"&lt;p&gt; Thank You for being a part of {{ doc.company }}! We hope you are enjoying the service.&lt;/p&gt;\n"
-"\n"
-"&lt;p&gt; Please find enclosed the E Bill statement. The outstanding amount is {{ doc.grand_total }}.&lt;/p&gt;\n"
-"\n"
-"&lt;p&gt; We don't want you to be spending time running around in order to pay for your Bill.<br>After all, life is beautiful and the time you have in hand should be spent to enjoy it!<br>So here are our little ways to help you get more time for life! &lt;/p&gt;\n"
-"\n"
-"&lt;a href=\"{{ payment_url }}\"&gt; click here to pay &lt;/a&gt;\n"
-"\n"
+msgid "<pre><h5>Message Example</h5>\n\n"
+"&lt;p&gt; Thank You for being a part of {{ doc.company }}! We hope you are enjoying the service.&lt;/p&gt;\n\n"
+"&lt;p&gt; Please find enclosed the E Bill statement. The outstanding amount is {{ doc.grand_total }}.&lt;/p&gt;\n\n"
+"&lt;p&gt; We don't want you to be spending time running around in order to pay for your Bill.<br>After all, life is beautiful and the time you have in hand should be spent to enjoy it!<br>So here are our little ways to help you get more time for life! &lt;/p&gt;\n\n"
+"&lt;a href=\"{{ payment_url }}\"&gt; click here to pay &lt;/a&gt;\n\n"
 "</pre>\n"
 msgstr ""
 
 #. Content of the 'Message Examples' (HTML) field in DocType 'Payment Request'
 #: accounts/doctype/payment_request/payment_request.json
 msgctxt "Payment Request"
-msgid ""
-"<pre><h5>Message Example</h5>\n"
-"\n"
-"&lt;p&gt;Dear {{ doc.contact_person }},&lt;/p&gt;\n"
-"\n"
-"&lt;p&gt;Requesting payment for {{ doc.doctype }}, {{ doc.name }} for {{ doc.grand_total }}.&lt;/p&gt;\n"
-"\n"
-"&lt;a href=\"{{ payment_url }}\"&gt; click here to pay &lt;/a&gt;\n"
-"\n"
+msgid "<pre><h5>Message Example</h5>\n\n"
+"&lt;p&gt;Dear {{ doc.contact_person }},&lt;/p&gt;\n\n"
+"&lt;p&gt;Requesting payment for {{ doc.doctype }}, {{ doc.name }} for {{ doc.grand_total }}.&lt;/p&gt;\n\n"
+"&lt;a href=\"{{ payment_url }}\"&gt; click here to pay &lt;/a&gt;\n\n"
 "</pre>\n"
 msgstr ""
 
 #. Content of the 'html_19' (HTML) field in DocType 'Inventory Dimension'
 #: stock/doctype/inventory_dimension/inventory_dimension.json
 msgctxt "Inventory Dimension"
-msgid ""
-"<table class=\"table table-bordered table-condensed\">\n"
+msgid "<table class=\"table table-bordered table-condensed\">\n"
 "<thead>\n"
 "  <tr>\n"
 "         <th class=\"table-sr\" style=\"width: 50%;\">Child Document</th>\n"
@@ -1309,8 +1155,7 @@
 "<tbody>\n"
 "<tr>\n"
 "         <td>\n"
-"                  <p> To access parent document field use parent.fieldname and to access child table document field use doc.fieldname </p>\n"
-"\n"
+"                  <p> To access parent document field use parent.fieldname and to access child table document field use doc.fieldname </p>\n\n"
 "         </td>\n"
 "         <td>\n"
 "                    <p>To access document field use doc.fieldname </p>\n"
@@ -1318,22 +1163,14 @@
 "</tr>\n"
 "<tr>\n"
 "        <td>\n"
-"                   <p><b>Example: </b> parent.doctype == \"Stock Entry\" and doc.item_code == \"Test\" </p>\n"
-"\n"
+"                   <p><b>Example: </b> parent.doctype == \"Stock Entry\" and doc.item_code == \"Test\" </p>\n\n"
 "        </td>\n"
 "         <td>\n"
 "                   <p><b>Example: </b> doc.doctype == \"Stock Entry\" and doc.purpose == \"Manufacture\"</p>    \n"
 "          </td>\n"
-"</tr>\n"
-"\n"
+"</tr>\n\n"
 "</tbody>\n"
-"</table>\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
+"</table>\n\n\n\n\n\n\n"
 msgstr ""
 
 #: stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py:190
@@ -1373,19 +1210,17 @@
 
 #. Description of the Onboarding Step 'Create a Sales Order'
 #: selling/onboarding_step/create_a_sales_order/create_a_sales_order.json
-msgid ""
-"A Sales Order is a confirmation of an order from your customer. It is also referred to as Proforma Invoice.\n"
-"\n"
+msgid "A Sales Order is a confirmation of an order from your customer. It is also referred to as Proforma Invoice.\n\n"
 "Sales Order at the heart of your sales and purchase transactions. Sales Orders are linked in Delivery Note, Sales Invoices, Material Request, and Maintenance transactions. Through Sales Order, you can track fulfillment of the overall deal towards the customer."
 msgstr ""
 
 #: setup/doctype/company/company.py:937
 msgid "A Transaction Deletion Job is triggered for {0}"
-msgstr "یک کار حذف تراکنش برای {0} راه اندازی می شود"
+msgstr "یک کار حذف تراکنش برای {0} فعال می شود"
 
 #: setup/doctype/company/company.py:914
 msgid "A Transaction Deletion Job: {0} is already running for {1}"
-msgstr "یک کار حذف تراکنش: {0} از قبل برای {1} در حال اجرا است"
+msgstr "یک کار حذف تراکنش: {0} در حال حاضر برای {1} در حال اجرا است"
 
 #. Description of the 'Send To Primary Contact' (Check) field in DocType
 #. 'Process Statement Of Accounts'
@@ -1446,105 +1281,105 @@
 #: assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.json
 msgctxt "Asset Depreciation Schedule"
 msgid "ACC-ADS-.YYYY.-"
-msgstr "ACC-ADS-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Asset Maintenance Log'
 #: assets/doctype/asset_maintenance_log/asset_maintenance_log.json
 msgctxt "Asset Maintenance Log"
 msgid "ACC-AML-.YYYY.-"
-msgstr "ACC-AML-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Asset Shift
 #. Allocation'
 #: assets/doctype/asset_shift_allocation/asset_shift_allocation.json
 msgctxt "Asset Shift Allocation"
 msgid "ACC-ASA-.YYYY.-"
-msgstr "ACC-ASA-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Asset Capitalization'
 #: assets/doctype/asset_capitalization/asset_capitalization.json
 msgctxt "Asset Capitalization"
 msgid "ACC-ASC-.YYYY.-"
-msgstr "ACC-ASC-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Asset Repair'
 #: assets/doctype/asset_repair/asset_repair.json
 msgctxt "Asset Repair"
 msgid "ACC-ASR-.YYYY.-"
-msgstr "ACC-ASR-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Asset'
 #: assets/doctype/asset/asset.json
 msgctxt "Asset"
 msgid "ACC-ASS-.YYYY.-"
-msgstr "ACC-ASS-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Bank Transaction'
 #: accounts/doctype/bank_transaction/bank_transaction.json
 msgctxt "Bank Transaction"
 msgid "ACC-BTN-.YYYY.-"
-msgstr "ACC-BTN-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Journal Entry'
 #: accounts/doctype/journal_entry/journal_entry.json
 msgctxt "Journal Entry"
 msgid "ACC-JV-.YYYY.-"
-msgstr "ACC-JV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Payment Entry'
 #: accounts/doctype/payment_entry/payment_entry.json
 msgctxt "Payment Entry"
 msgid "ACC-PAY-.YYYY.-"
-msgstr "ACC-PAY-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Invoice Series' (Select) field in DocType 'Import Supplier
 #. Invoice'
 #: regional/doctype/import_supplier_invoice/import_supplier_invoice.json
 msgctxt "Import Supplier Invoice"
 msgid "ACC-PINV-.YYYY.-"
-msgstr "ACC-PINV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Purchase Invoice'
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
 msgctxt "Purchase Invoice"
 msgid "ACC-PINV-.YYYY.-"
-msgstr "ACC-PINV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Purchase Invoice'
 #: accounts/doctype/purchase_invoice/purchase_invoice.json
 msgctxt "Purchase Invoice"
 msgid "ACC-PINV-RET-.YYYY.-"
-msgstr "ACC-PINV-RET-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Payment Request'
 #: accounts/doctype/payment_request/payment_request.json
 msgctxt "Payment Request"
 msgid "ACC-PRQ-.YYYY.-"
-msgstr "ACC-PRQ-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'POS Invoice'
 #: accounts/doctype/pos_invoice/pos_invoice.json
 msgctxt "POS Invoice"
 msgid "ACC-PSINV-.YYYY.-"
-msgstr "ACC-PSINV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'naming_series' (Select) field in DocType 'Shareholder'
 #: accounts/doctype/shareholder/shareholder.json
 msgctxt "Shareholder"
 msgid "ACC-SH-.YYYY.-"
-msgstr "ACC-SH-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Sales Invoice'
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "ACC-SINV-.YYYY.-"
-msgstr "ACC-SINV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Sales Invoice'
 #: accounts/doctype/sales_invoice/sales_invoice.json
 msgctxt "Sales Invoice"
 msgid "ACC-SINV-RET-.YYYY.-"
-msgstr "ACC-SINV-RET-.YYYY.-"
+msgstr ""
 
 #. Label of a Date field in DocType 'Serial No'
 #: stock/doctype/serial_no/serial_no.json
@@ -1588,7 +1423,7 @@
 #: utilities/doctype/video_settings/video_settings.json
 msgctxt "Video Settings"
 msgid "API Key"
-msgstr "کلید ای پی ای"
+msgstr "کلید API"
 
 #. Label of a Data field in DocType 'Shipment'
 #: stock/doctype/shipment/shipment.json
@@ -1600,7 +1435,7 @@
 #: setup/doctype/company/company.json
 msgctxt "Company"
 msgid "Abbr"
-msgstr "اببر"
+msgstr ""
 
 #. Label of a Data field in DocType 'Item Attribute Value'
 #: stock/doctype/item_attribute_value/item_attribute_value.json
@@ -3303,7 +3138,7 @@
 #. Subtitle of the Module Onboarding 'Accounts'
 #: accounts/module_onboarding/accounts/accounts.json
 msgid "Accounts, Invoices, Taxation, and more."
-msgstr ""
+msgstr "حساب ها، فاکتورها، مالیات و موارد دیگر."
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:33
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:46
@@ -3779,7 +3614,7 @@
 #: assets/doctype/asset_capitalization_stock_item/asset_capitalization_stock_item.json
 msgctxt "Asset Capitalization Stock Item"
 msgid "Actual Qty in Warehouse"
-msgstr "تعداد واقعی در انبار"
+msgstr "مقدار واقعی در انبار"
 
 #: stock/doctype/stock_ledger_entry/stock_ledger_entry.py:185
 msgid "Actual Qty is mandatory"
@@ -4946,13 +4781,13 @@
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Advance Payment Status"
-msgstr ""
+msgstr "وضعیت پیش پرداخت"
 
 #. Label of a Select field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Advance Payment Status"
-msgstr ""
+msgstr "وضعیت پیش پرداخت"
 
 #: controllers/accounts_controller.py:214
 msgid "Advance Payments"
@@ -5381,7 +5216,7 @@
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Algorithm"
-msgstr ""
+msgstr "الگوریتم"
 
 #. Name of a role
 #: accounts/doctype/pos_invoice/pos_invoice.json
@@ -5818,7 +5653,7 @@
 #: accounts/doctype/pos_payment_method/pos_payment_method.json
 msgctxt "POS Payment Method"
 msgid "Allow In Returns"
-msgstr "Allow In Returns"
+msgstr ""
 
 #. Label of a Check field in DocType 'Buying Settings'
 #: buying/doctype/buying_settings/buying_settings.json
@@ -6091,13 +5926,13 @@
 #: selling/doctype/customer/customer.json
 msgctxt "Customer"
 msgid "Allowed Items"
-msgstr ""
+msgstr "آیتم‌های مجاز"
 
 #. Group in Supplier's connections
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "Allowed Items"
-msgstr ""
+msgstr "آیتم‌های مجاز"
 
 #. Name of a DocType
 #: accounts/doctype/allowed_to_transact_with/allowed_to_transact_with.json
@@ -7414,6 +7249,7 @@
 #. Description of the 'Minimum Value' (Float) field in DocType 'Quality
 #. Inspection Reading'
 #. Description of the 'Maximum Value' (Float) field in DocType 'Quality
+#. Inspection Reading'
 #: stock/doctype/quality_inspection_reading/quality_inspection_reading.json
 msgctxt "Quality Inspection Reading"
 msgid "Applied on each reading."
@@ -9283,7 +9119,7 @@
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "B-"
-msgstr "ب-"
+msgstr "B-"
 
 #. Option for the 'Algorithm' (Select) field in DocType 'Bisect Accounting
 #. Statements'
@@ -9296,7 +9132,7 @@
 #: manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
 msgctxt "Material Request Plan Item"
 msgid "BIN Qty"
-msgstr "BIN Qty"
+msgstr ""
 
 #. Name of a DocType
 #: manufacturing/doctype/bom/bom.json manufacturing/doctype/bom/bom_tree.js:8
@@ -9376,7 +9212,7 @@
 
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:21
 msgid "BOM 1"
-msgstr "BOM 1"
+msgstr ""
 
 #: manufacturing/doctype/bom/bom.py:1348
 msgid "BOM 1 {0} and BOM 2 {1} should not be same"
@@ -9384,7 +9220,7 @@
 
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:38
 msgid "BOM 2"
-msgstr "BOM 2"
+msgstr ""
 
 #. Label of a Link in the Manufacturing Workspace
 #: manufacturing/page/bom_comparison_tool/bom_comparison_tool.js:4
@@ -9453,7 +9289,7 @@
 #. Name of a report
 #: manufacturing/report/bom_explorer/bom_explorer.json
 msgid "BOM Explorer"
-msgstr "BOM Explorer"
+msgstr ""
 
 #. Name of a DocType
 #: manufacturing/doctype/bom_explosion_item/bom_explosion_item.json
@@ -9566,7 +9402,7 @@
 
 #: manufacturing/report/bom_stock_report/bom_stock_report.py:27
 msgid "BOM Qty"
-msgstr "BOM Qty"
+msgstr ""
 
 #: stock/report/item_prices/item_prices.py:60
 msgid "BOM Rate"
@@ -9605,7 +9441,7 @@
 
 #: manufacturing/report/bom_stock_report/bom_stock_report.py:28
 msgid "BOM UoM"
-msgstr "BOM UoM"
+msgstr ""
 
 #. Name of a DocType
 #: manufacturing/doctype/bom_update_batch/bom_update_batch.json
@@ -9793,13 +9629,13 @@
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.json
 msgctxt "Bisect Accounting Statements"
 msgid "Balance Sheet Summary"
-msgstr ""
+msgstr "خلاصه ترازنامه"
 
 #. Label of a Float field in DocType 'Bisect Nodes'
 #: accounts/doctype/bisect_nodes/bisect_nodes.json
 msgctxt "Bisect Nodes"
 msgid "Balance Sheet Summary"
-msgstr ""
+msgstr "خلاصه ترازنامه"
 
 #. Label of a Currency field in DocType 'Stock Ledger Entry'
 #: stock/doctype/stock_ledger_entry/stock_ledger_entry.json
@@ -10705,7 +10541,7 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py:2118
 msgid "Batch No {0} does not exists"
-msgstr "شماره دسته {0} وجود ندارد"
+msgstr ""
 
 #: stock/utils.py:643
 msgid "Batch No {0} is linked with Item {1} which has serial no. Please scan serial no instead."
@@ -10834,7 +10670,7 @@
 
 #: accounts/doctype/subscription/subscription.py:341
 msgid "Below Subscription Plans are of different currency to the party default billing currency/Company currency: {0}"
-msgstr "طرح‌های اشتراک زیر دارای واحد پولی متفاوت با ارز پیش‌فرض صورت‌حساب طرف/ارز شرکت هستند: {0}"
+msgstr ""
 
 #: accounts/report/accounts_receivable/accounts_receivable.py:1061
 #: accounts/report/purchase_register/purchase_register.py:214
@@ -11923,7 +11759,7 @@
 #: stock/doctype/closing_stock_balance/closing_stock_balance.json
 msgctxt "Closing Stock Balance"
 msgid "CBAL-.#####"
-msgstr "CBAL-.#####"
+msgstr ""
 
 #. Label of a Link field in DocType 'Process Statement Of Accounts'
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.json
@@ -11944,13 +11780,13 @@
 
 #: stock/report/cogs_by_item_group/cogs_by_item_group.py:45
 msgid "COGS Debit"
-msgstr "COGS Debit"
+msgstr ""
 
 #. Name of a Workspace
 #. Label of a Card Break in the Home Workspace
 #: crm/workspace/crm/crm.json setup/workspace/home/home.json
 msgid "CRM"
-msgstr "CRM"
+msgstr ""
 
 #. Name of a DocType
 #: crm/doctype/crm_note/crm_note.json
@@ -11975,19 +11811,19 @@
 #: crm/doctype/lead/lead.json
 msgctxt "Lead"
 msgid "CRM-LEAD-.YYYY.-"
-msgstr "CRM-LEAD-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "CRM-OPP-.YYYY.-"
-msgstr "CRM-OPP-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Customer'
 #: selling/doctype/customer/customer.json
 msgctxt "Customer"
 msgid "CUST-.YYYY.-"
-msgstr "CUST-.YYYY.-"
+msgstr ""
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:34
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:50
@@ -12875,7 +12711,7 @@
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:26
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:39
 msgid "Capital Equipment"
-msgstr ""
+msgstr "تجهیزات سرمایه ای"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:103
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:151
@@ -17415,7 +17251,7 @@
 #. Label of a Card Break in the Accounting Workspace
 #: accounts/workspace/accounting/accounting.json
 msgid "Cost Center and Budgeting"
-msgstr ""
+msgstr "مرکز هزینه و بودجه"
 
 #: accounts/doctype/cost_center/cost_center.py:77
 msgid "Cost Center is a part of Cost Center Allocation, hence cannot be converted to a group"
@@ -17768,7 +17604,7 @@
 #: accounts/doctype/bank_clearance/bank_clearance.py:79
 #: accounts/doctype/journal_entry/journal_entry.js:298
 msgid "Cr"
-msgstr "Cr"
+msgstr ""
 
 #: accounts/doctype/account/account_tree.js:148
 #: accounts/doctype/account/account_tree.js:151
@@ -18088,7 +17924,7 @@
 
 #: public/js/utils/serial_no_batch_selector.js:220
 msgid "Create Serial Nos"
-msgstr "شماره های سریال ایجاد کنید"
+msgstr "ایجاد شماره‌های سریال"
 
 #: stock/dashboard/item_dashboard.js:271
 #: stock/doctype/material_request/material_request.js:376
@@ -18138,13 +17974,13 @@
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_your_first_purchase_invoice/create_your_first_purchase_invoice.json
 msgid "Create Your First Purchase Invoice "
-msgstr ""
+msgstr "اولین فاکتور خرید خود را ایجاد کنید "
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
 #: setup/onboarding_step/create_your_first_sales_invoice/create_your_first_sales_invoice.json
 msgid "Create Your First Sales Invoice "
-msgstr ""
+msgstr "اولین فاکتور فروش خود را ایجاد کنید "
 
 #. Title of an Onboarding Step
 #: accounts/onboarding_step/create_a_customer/create_a_customer.json
@@ -18196,12 +18032,12 @@
 #: setup/onboarding_step/create_a_supplier/create_a_supplier.json
 #: stock/onboarding_step/create_a_supplier/create_a_supplier.json
 msgid "Create a Supplier"
-msgstr ""
+msgstr "یک تامین کننده ایجاد کنید"
 
 #. Title of an Onboarding Step
 #: manufacturing/onboarding_step/warehouse/warehouse.json
 msgid "Create a Warehouse"
-msgstr ""
+msgstr "یک انبار ایجاد کنید"
 
 #. Label of an action in the Onboarding Step 'Create an Item'
 #: setup/onboarding_step/create_an_item/create_an_item.json
@@ -18367,14 +18203,12 @@
 msgstr "ایجاد <b><a href='/app/{0}'>{1}(ها)</a></b> با موفقیت"
 
 #: utilities/bulk_transaction.py:190
-msgid ""
-"Creation of {0} failed.\n"
+msgid "Creation of {0} failed.\n"
 "\t\t\t\tCheck <b><a href=\"/app/bulk-transaction-log\">Bulk Transaction Log</a></b>"
 msgstr ""
 
 #: utilities/bulk_transaction.py:181
-msgid ""
-"Creation of {0} partially successful.\n"
+msgid "Creation of {0} partially successful.\n"
 "\t\t\t\tCheck <b><a href=\"/app/bulk-transaction-log\">Bulk Transaction Log</a></b>"
 msgstr ""
 
@@ -20358,13 +20192,13 @@
 #: manufacturing/doctype/downtime_entry/downtime_entry.json
 msgctxt "Downtime Entry"
 msgid "DT-"
-msgstr "DT-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Dunning'
 #: accounts/doctype/dunning/dunning.json
 msgctxt "Dunning"
 msgid "DUNN-.MM.-.YY.-"
-msgstr "DUNN-.MM.-.YY.-"
+msgstr ""
 
 #: public/js/stock_analytics.js:51
 msgid "Daily"
@@ -20890,7 +20724,7 @@
 #: accounts/doctype/payment_ledger_entry/payment_ledger_entry.json
 msgctxt "Payment Ledger Entry"
 msgid "DeLinked"
-msgstr "DeLinked"
+msgstr ""
 
 #. Label of a Data field in DocType 'Prospect Opportunity'
 #: crm/doctype/prospect_opportunity/prospect_opportunity.json
@@ -25194,7 +25028,7 @@
 
 #: accounts/doctype/pos_profile/pos_profile.py:135
 msgid "Duplicate customer group found in the customer group table"
-msgstr ""
+msgstr "گروه مشتری تکراری در جدول گروه مشتری یافت شد"
 
 #: stock/doctype/item_manufacturer/item_manufacturer.py:44
 msgid "Duplicate entry against the item code {0} and manufacturer {1}"
@@ -25261,19 +25095,19 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN"
-msgstr "EAN"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN-12"
-msgstr "EAN-12"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "EAN-8"
-msgstr "EAN-8"
+msgstr ""
 
 #. Label of a Data field in DocType 'Tally Migration'
 #: erpnext_integrations/doctype/tally_migration/tally_migration.json
@@ -25460,7 +25294,7 @@
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:27
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:40
 msgid "Electronic Equipment"
-msgstr ""
+msgstr "تجهیزات الکترونیکی"
 
 #. Name of a report
 #: regional/report/electronic_invoice_register/electronic_invoice_register.json
@@ -26351,18 +26185,16 @@
 
 #: accounts/doctype/bank_guarantee/bank_guarantee.py:51
 msgid "Enter the Bank Guarantee Number before submitting."
-msgstr ""
+msgstr "قبل از ارسال، شماره ضمانت نامه بانکی را وارد کنید."
 
 #: manufacturing/doctype/routing/routing.js:82
-msgid ""
-"Enter the Operation, the table will fetch the Operation details like Hourly Rate, Workstation automatically.\n"
-"\n"
+msgid "Enter the Operation, the table will fetch the Operation details like Hourly Rate, Workstation automatically.\n\n"
 " After that, set the Operation Time in minutes and the table will calculate the Operation Costs based on the Hourly Rate and Operation Time."
 msgstr ""
 
 #: accounts/doctype/bank_guarantee/bank_guarantee.py:53
 msgid "Enter the name of the Beneficiary before submitting."
-msgstr ""
+msgstr "قبل از ارسال نام ذینفع را وارد کنید."
 
 #: accounts/doctype/bank_guarantee/bank_guarantee.py:55
 msgid "Enter the name of the bank or lending institution before submitting."
@@ -26520,7 +26352,7 @@
 
 #: accounts/doctype/opening_invoice_creation_tool/opening_invoice_creation_tool.py:273
 msgid "Error Occurred"
-msgstr ""
+msgstr "خطا رخ داده است"
 
 #: telephony/doctype/call_log/call_log.py:195
 msgid "Error during caller information update"
@@ -26604,8 +26436,7 @@
 #. Description of the 'Serial Number Series' (Data) field in DocType 'Item'
 #: stock/doctype/item/item.json
 msgctxt "Item"
-msgid ""
-"Example: ABCD.#####\n"
+msgid "Example: ABCD.#####\n"
 "If series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank."
 msgstr ""
 
@@ -27402,7 +27233,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "FIFO"
-msgstr "FIFO"
+msgstr ""
 
 #. Option for the 'Default Valuation Method' (Select) field in DocType 'Stock
 #. Settings'
@@ -27411,7 +27242,7 @@
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "FIFO"
-msgstr "FIFO"
+msgstr ""
 
 #. Name of a report
 #: stock/report/fifo_queue_vs_qty_after_transaction_comparison/fifo_queue_vs_qty_after_transaction_comparison.json
@@ -28018,7 +27849,7 @@
 #. Name of a Workspace
 #: accounts/workspace/financial_reports/financial_reports.json
 msgid "Financial Reports"
-msgstr ""
+msgstr "گزارشهای مالی"
 
 #. Title of an Onboarding Step
 #. Label of a Card Break in the Financial Reports Workspace
@@ -28476,7 +28307,7 @@
 
 #: controllers/stock_controller.py:770
 msgid "For Item {0} cannot be received more than {1} qty against the {2} {3}"
-msgstr "برای مورد {0} نمی توان بیش از {1} تعداد در برابر {2} {3} دریافت کرد"
+msgstr ""
 
 #. Label of a Link field in DocType 'Job Card'
 #: manufacturing/doctype/job_card/job_card.json
@@ -28503,6 +28334,7 @@
 #. Description of the 'Planned Quantity' (Float) field in DocType 'Sales Order
 #. Item'
 #. Description of the 'Produced Quantity' (Float) field in DocType 'Sales Order
+#. Item'
 #: selling/doctype/sales_order_item/sales_order_item.json
 msgctxt "Sales Order Item"
 msgid "For Production"
@@ -29533,19 +29365,19 @@
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "Fully Paid"
-msgstr ""
+msgstr "به طور کامل پرداخت شده"
 
 #. Option for the 'Advance Payment Status' (Select) field in DocType 'Sales
 #. Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Fully Paid"
-msgstr ""
+msgstr "به طور کامل پرداخت شده"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:28
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:41
 msgid "Furniture and Fixtures"
-msgstr ""
+msgstr "مبلمان و وسایل"
 
 #: accounts/doctype/account/account_tree.js:111
 msgid "Further accounts can be made under Groups, but entries can be made against non-Groups"
@@ -29577,7 +29409,7 @@
 #: stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py:235
 #: stock/report/stock_ledger_variance/stock_ledger_variance.py:159
 msgid "G - D"
-msgstr "G - D"
+msgstr ""
 
 #: accounts/report/accounts_receivable_summary/accounts_receivable_summary.py:174
 #: accounts/report/general_and_payment_ledger_comparison/general_and_payment_ledger_comparison.py:243
@@ -29606,13 +29438,13 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "GS1"
-msgstr "GS1"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "GTIN"
-msgstr "GTIN"
+msgstr ""
 
 #. Label of a Currency field in DocType 'Exchange Rate Revaluation Account'
 #: accounts/doctype/exchange_rate_revaluation_account/exchange_rate_revaluation_account.json
@@ -30662,7 +30494,7 @@
 #: stock/report/stock_ledger_invariant_check/stock_ledger_invariant_check.py:245
 #: stock/report/stock_ledger_variance/stock_ledger_variance.py:169
 msgid "H - F"
-msgstr "H - F"
+msgstr ""
 
 #. Name of a role
 #: crm/doctype/appointment_booking_settings/appointment_booking_settings.json
@@ -30686,13 +30518,13 @@
 #: setup/doctype/driver/driver.json
 msgctxt "Driver"
 msgid "HR-DRI-.YYYY.-"
-msgstr "HR-DRI-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "HR-EMP-"
-msgstr "HR-EMP-"
+msgstr ""
 
 #. Option for the 'Periodicity' (Select) field in DocType 'Maintenance Schedule
 #. Item'
@@ -31183,25 +31015,25 @@
 #: accounts/doctype/bank_account/bank_account.json
 msgctxt "Bank Account"
 msgid "IBAN"
-msgstr "IBAN"
+msgstr ""
 
 #. Label of a Data field in DocType 'Bank Guarantee'
 #: accounts/doctype/bank_guarantee/bank_guarantee.json
 msgctxt "Bank Guarantee"
 msgid "IBAN"
-msgstr "IBAN"
+msgstr ""
 
 #. Label of a Data field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "IBAN"
-msgstr "IBAN"
+msgstr ""
 
 #. Label of a Read Only field in DocType 'Payment Request'
 #: accounts/doctype/payment_request/payment_request.json
 msgctxt "Payment Request"
 msgid "IBAN"
-msgstr "IBAN"
+msgstr ""
 
 #: accounts/doctype/bank_account/bank_account.py:84
 #: accounts/doctype/bank_account/bank_account.py:87
@@ -31228,7 +31060,7 @@
 #. Name of a report
 #: regional/report/irs_1099/irs_1099.json
 msgid "IRS 1099"
-msgstr "IRS 1099"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
@@ -31240,25 +31072,25 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISBN-10"
-msgstr "ISBN-10"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISBN-13"
-msgstr "ISBN-13"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Issue'
 #: support/doctype/issue/issue.json
 msgctxt "Issue"
 msgid "ISS-.YYYY.-"
-msgstr "ISS-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "ISSN"
-msgstr "ISSN"
+msgstr ""
 
 #: manufacturing/report/job_card_summary/job_card_summary.py:128
 #: manufacturing/report/quality_inspection_summary/quality_inspection_summary.py:69
@@ -31568,10 +31400,13 @@
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on MR'
 #. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on PO' (Select) field in
+#. DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on PO'
+#. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on Actual' (Select) field
 #. in DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on Actual'
+#. (Select) field in DocType 'Budget'
 #: accounts/doctype/budget/budget.json
 msgctxt "Budget"
 msgid "Ignore"
@@ -32021,7 +31856,7 @@
 #: setup/workspace/home/home.json setup/workspace/settings/settings.json
 msgctxt "Data Import"
 msgid "Import Data"
-msgstr ""
+msgstr "وارد کردن داده‌ها"
 
 #. Title of an Onboarding Step
 #: setup/onboarding_step/data_import/data_import.json
@@ -33743,7 +33578,7 @@
 
 #: selling/doctype/quotation/quotation.py:253
 msgid "Invalid lost reason {0}, please create a new lost reason"
-msgstr "دلیل گمشده نامعتبر {0}، لطفاً یک دلیل گمشده جدید ایجاد کنید"
+msgstr "دلیل از دست رفتن نامعتبر {0}، لطفاً یک دلیل از دست رفتن جدید ایجاد کنید"
 
 #: stock/doctype/item/item.py:402
 msgid "Invalid naming series (. missing) for {0}"
@@ -37676,7 +37511,7 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "LIFO"
-msgstr "LIFO"
+msgstr ""
 
 #. Option for the 'Default Valuation Method' (Select) field in DocType 'Stock
 #. Settings'
@@ -37685,7 +37520,7 @@
 #: stock/doctype/stock_settings/stock_settings.json
 msgctxt "Stock Settings"
 msgid "LIFO"
-msgstr "LIFO"
+msgstr ""
 
 #. Label of a Data field in DocType 'Item Website Specification'
 #: stock/doctype/item_website_specification/item_website_specification.json
@@ -38132,8 +37967,7 @@
 #. 'Appointment Booking Settings'
 #: crm/doctype/appointment_booking_settings/appointment_booking_settings.json
 msgctxt "Appointment Booking Settings"
-msgid ""
-"Leave blank for home.\n"
+msgid "Leave blank for home.\n"
 "This is relative to site URL, for example \"about\" will redirect to \"https://yoursitename.com/about\""
 msgstr ""
 
@@ -38169,7 +38003,7 @@
 #. Label of a Card Break in the Financial Reports Workspace
 #: accounts/workspace/financial_reports/financial_reports.json
 msgid "Ledgers"
-msgstr ""
+msgstr "دفتر کل"
 
 #. Option for the 'Status' (Select) field in DocType 'Driver'
 #: setup/doctype/driver/driver.json
@@ -38533,13 +38367,13 @@
 #: accounts/doctype/account/account.json
 msgctxt "Account"
 msgid "Lft"
-msgstr "Lft"
+msgstr ""
 
 #. Label of a Int field in DocType 'Company'
 #: setup/doctype/company/company.json
 msgctxt "Company"
 msgid "Lft"
-msgstr "Lft"
+msgstr ""
 
 #: accounts/report/balance_sheet/balance_sheet.py:240
 msgid "Liabilities"
@@ -39132,115 +38966,115 @@
 #: stock/doctype/delivery_note/delivery_note.json
 msgctxt "Delivery Note"
 msgid "MAT-DN-.YYYY.-"
-msgstr "MAT-DN-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Delivery Note'
 #: stock/doctype/delivery_note/delivery_note.json
 msgctxt "Delivery Note"
 msgid "MAT-DN-RET-.YYYY.-"
-msgstr "MAT-DN-RET-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Delivery Trip'
 #: stock/doctype/delivery_trip/delivery_trip.json
 msgctxt "Delivery Trip"
 msgid "MAT-DT-.YYYY.-"
-msgstr "MAT-DT-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Installation Note'
 #: selling/doctype/installation_note/installation_note.json
 msgctxt "Installation Note"
 msgid "MAT-INS-.YYYY.-"
-msgstr "MAT-INS-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Landed Cost Voucher'
 #: stock/doctype/landed_cost_voucher/landed_cost_voucher.json
 msgctxt "Landed Cost Voucher"
 msgid "MAT-LCV-.YYYY.-"
-msgstr "MAT-LCV-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Material Request'
 #: stock/doctype/material_request/material_request.json
 msgctxt "Material Request"
 msgid "MAT-MR-.YYYY.-"
-msgstr "MAT-MR-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Maintenance Schedule'
 #: maintenance/doctype/maintenance_schedule/maintenance_schedule.json
 msgctxt "Maintenance Schedule"
 msgid "MAT-MSH-.YYYY.-"
-msgstr "MAT-MSH-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Maintenance Visit'
 #: maintenance/doctype/maintenance_visit/maintenance_visit.json
 msgctxt "Maintenance Visit"
 msgid "MAT-MVS-.YYYY.-"
-msgstr "MAT-MVS-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Packing Slip'
 #: stock/doctype/packing_slip/packing_slip.json
 msgctxt "Packing Slip"
 msgid "MAT-PAC-.YYYY.-"
-msgstr "MAT-PAC-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "MAT-PR-RET-.YYYY.-"
-msgstr "MAT-PR-RET-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Purchase Receipt'
 #: stock/doctype/purchase_receipt/purchase_receipt.json
 msgctxt "Purchase Receipt"
 msgid "MAT-PRE-.YYYY.-"
-msgstr "MAT-PRE-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Quality Inspection'
 #: stock/doctype/quality_inspection/quality_inspection.json
 msgctxt "Quality Inspection"
 msgid "MAT-QA-.YYYY.-"
-msgstr "MAT-QA-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Stock Reconciliation'
 #: stock/doctype/stock_reconciliation/stock_reconciliation.json
 msgctxt "Stock Reconciliation"
 msgid "MAT-RECO-.YYYY.-"
-msgstr "MAT-RECO-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Subcontracting Receipt'
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
 msgctxt "Subcontracting Receipt"
 msgid "MAT-SCR-.YYYY.-"
-msgstr "MAT-SCR-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Subcontracting Receipt'
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
 msgctxt "Subcontracting Receipt"
 msgid "MAT-SCR-RET-.YYYY.-"
-msgstr "MAT-SCR-RET-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Stock Entry'
 #: stock/doctype/stock_entry/stock_entry.json
 msgctxt "Stock Entry"
 msgid "MAT-STE-.YYYY.-"
-msgstr "MAT-STE-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Blanket Order'
 #: manufacturing/doctype/blanket_order/blanket_order.json
 msgctxt "Blanket Order"
 msgid "MFG-BLR-.YYYY.-"
-msgstr "MFG-BLR-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Production Plan'
 #: manufacturing/doctype/production_plan/production_plan.json
 msgctxt "Production Plan"
 msgid "MFG-PP-.YYYY.-"
-msgstr "MFG-PP-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Work Order'
 #: manufacturing/doctype/work_order/work_order.json
 msgctxt "Work Order"
 msgid "MFG-WO-.YYYY.-"
-msgstr "MFG-WO-.YYYY.-"
+msgstr ""
 
 #: manufacturing/report/downtime_analysis/downtime_analysis.js:22
 #: manufacturing/report/downtime_analysis/downtime_analysis.py:78
@@ -40293,7 +40127,7 @@
 
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.js:19
 msgid "Margin View"
-msgstr "نمای حاشیه"
+msgstr ""
 
 #. Label of a Select field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
@@ -43673,7 +43507,7 @@
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "Not Requested"
-msgstr ""
+msgstr "درخواست نشده"
 
 #: selling/report/lost_quotations/lost_quotations.py:86
 #: support/report/issue_analytics/issue_analytics.py:208
@@ -44127,7 +43961,7 @@
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:29
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:42
 msgid "Office Equipment"
-msgstr ""
+msgstr "تجهیزات اداری"
 
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py:62
 #: accounts/doctype/account/chart_of_accounts/verified/standard_chart_of_accounts_with_account_number.py:86
@@ -44406,8 +44240,7 @@
 #. 'Exchange Rate Revaluation'
 #: accounts/doctype/exchange_rate_revaluation/exchange_rate_revaluation.json
 msgctxt "Exchange Rate Revaluation"
-msgid ""
-"Only values between [0,1) are allowed. Like {0.00, 0.04, 0.09, ...}\n"
+msgid "Only values between [0,1) are allowed. Like {0.00, 0.04, 0.09, ...}\n"
 "Ex: If allowance is set at 0.07, accounts that have balance of 0.07 in either of the currencies will be considered as zero balance account"
 msgstr ""
 
@@ -44423,116 +44256,116 @@
 #: support/report/issue_summary/issue_summary.js:43
 #: support/report/issue_summary/issue_summary.py:348
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Appointment'
 #: crm/doctype/appointment/appointment.json
 msgctxt "Appointment"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Issue'
 #: support/doctype/issue/issue.json
 msgctxt "Issue"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Job Card'
 #: manufacturing/doctype/job_card/job_card.json
 msgctxt "Job Card"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
 msgctxt "Lead"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Non Conformance'
 #: quality_management/doctype/non_conformance/non_conformance.json
 msgctxt "Non Conformance"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Opportunity'
 #: crm/doctype/opportunity/opportunity.json
 msgctxt "Opportunity"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'POS Opening Entry'
 #: accounts/doctype/pos_opening_entry/pos_opening_entry.json
 msgctxt "POS Opening Entry"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Pick List'
 #: stock/doctype/pick_list/pick_list.json
 msgctxt "Pick List"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Project'
 #: projects/doctype/project/project.json
 msgctxt "Project"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quality Action'
 #: quality_management/doctype/quality_action/quality_action.json
 msgctxt "Quality Action"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quality Action
 #. Resolution'
 #: quality_management/doctype/quality_action_resolution/quality_action_resolution.json
 msgctxt "Quality Action Resolution"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quality Meeting'
 #: quality_management/doctype/quality_meeting/quality_meeting.json
 msgctxt "Quality Meeting"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quality Review'
 #: quality_management/doctype/quality_review/quality_review.json
 msgctxt "Quality Review"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quality Review Objective'
 #: quality_management/doctype/quality_review_objective/quality_review_objective.json
 msgctxt "Quality Review Objective"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
 msgctxt "Quotation"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Subcontracting Order'
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.json
 msgctxt "Subcontracting Order"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Task'
 #: projects/doctype/task/task.json
 msgctxt "Task"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Option for the 'Status' (Select) field in DocType 'Warranty Claim'
 #: support/doctype/warranty_claim/warranty_claim.json
 msgctxt "Warranty Claim"
 msgid "Open"
-msgstr "باز کن"
+msgstr "باز"
 
 #. Label of a HTML field in DocType 'Lead'
 #: crm/doctype/lead/lead.json
@@ -45942,7 +45775,7 @@
 #: accounts/doctype/payment_order/payment_order.json
 msgctxt "Payment Order"
 msgid "PMO-"
-msgstr "PMO-"
+msgstr ""
 
 #. Label of a Data field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
@@ -45954,13 +45787,13 @@
 #: manufacturing/doctype/job_card/job_card.json
 msgctxt "Job Card"
 msgid "PO-JOB.#####"
-msgstr "PO-JOB.#####"
+msgstr ""
 
 #. Label of a Tab Break field in DocType 'Accounts Settings'
 #: accounts/doctype/accounts_settings/accounts_settings.json
 msgctxt "Accounts Settings"
 msgid "POS"
-msgstr "POS"
+msgstr ""
 
 #. Name of a DocType
 #: accounts/doctype/pos_closing_entry/pos_closing_entry.json
@@ -46251,19 +46084,19 @@
 #: accounts/doctype/cashier_closing/cashier_closing.json
 msgctxt "Cashier Closing"
 msgid "POS-CLO-"
-msgstr "POS-CLO-"
+msgstr ""
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Pricing Rule'
 #: accounts/doctype/pricing_rule/pricing_rule.json
 msgctxt "Pricing Rule"
 msgid "PRLE-.####"
-msgstr "PRLE-.####"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Project'
 #: projects/doctype/project/project.json
 msgctxt "Project"
 msgid "PROJ-.####"
-msgstr "PROJ-.####"
+msgstr ""
 
 #. Name of a DocType
 #: accounts/doctype/psoa_cost_center/psoa_cost_center.json
@@ -46280,31 +46113,31 @@
 #: buying/doctype/supplier_scorecard_period/supplier_scorecard_period.json
 msgctxt "Supplier Scorecard Period"
 msgid "PU-SSP-.YYYY.-"
-msgstr "PU-SSP-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Purchase Order'
 #: buying/doctype/purchase_order/purchase_order.json
 msgctxt "Purchase Order"
 msgid "PUR-ORD-.YYYY.-"
-msgstr "PUR-ORD-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Request for Quotation'
 #: buying/doctype/request_for_quotation/request_for_quotation.json
 msgctxt "Request for Quotation"
 msgid "PUR-RFQ-.YYYY.-"
-msgstr "PUR-RFQ-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Supplier Quotation'
 #: buying/doctype/supplier_quotation/supplier_quotation.json
 msgctxt "Supplier Quotation"
 msgid "PUR-SQTN-.YYYY.-"
-msgstr "PUR-SQTN-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "PZN"
-msgstr "PZN"
+msgstr ""
 
 #: stock/doctype/packing_slip/packing_slip.py:117
 msgid "Package No(s) already in use. Try from Package No {0}"
@@ -50846,19 +50679,19 @@
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "Preferred Contact Email"
-msgstr ""
+msgstr "ایمیل تماس ترجیحی"
 
 #. Label of a Data field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "Preferred Email"
-msgstr ""
+msgstr "ایمیل ترجیحی"
 
 #. Label of a Data field in DocType 'Packed Item'
 #: stock/doctype/packed_item/packed_item.json
 msgctxt "Packed Item"
 msgid "Prevdoc DocType"
-msgstr "Prevdoc DocType"
+msgstr ""
 
 #. Label of a Check field in DocType 'Supplier'
 #: buying/doctype/supplier/supplier.json
@@ -54583,149 +54416,149 @@
 #: stock/report/serial_no_ledger/serial_no_ledger.py:70
 #: templates/generators/bom.html:50 templates/pages/rfq.html:40
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Asset Capitalization Service Item'
 #: assets/doctype/asset_capitalization_service_item/asset_capitalization_service_item.json
 msgctxt "Asset Capitalization Service Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Asset Capitalization Stock Item'
 #: assets/doctype/asset_capitalization_stock_item/asset_capitalization_stock_item.json
 msgctxt "Asset Capitalization Stock Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'BOM Creator Item'
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
 msgctxt "BOM Creator Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'BOM Item'
 #: manufacturing/doctype/bom_item/bom_item.json
 msgctxt "BOM Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'BOM Scrap Item'
 #: manufacturing/doctype/bom_scrap_item/bom_scrap_item.json
 msgctxt "BOM Scrap Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'BOM Website Item'
 #: manufacturing/doctype/bom_website_item/bom_website_item.json
 msgctxt "BOM Website Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Section Break field in DocType 'Job Card Item'
 #: manufacturing/doctype/job_card_item/job_card_item.json
 msgctxt "Job Card Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Job Card Scrap Item'
 #: manufacturing/doctype/job_card_scrap_item/job_card_scrap_item.json
 msgctxt "Job Card Scrap Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Landed Cost Item'
 #: stock/doctype/landed_cost_item/landed_cost_item.json
 msgctxt "Landed Cost Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Option for the 'Distribute Charges Based On' (Select) field in DocType
 #. 'Landed Cost Voucher'
 #: stock/doctype/landed_cost_voucher/landed_cost_voucher.json
 msgctxt "Landed Cost Voucher"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Opportunity Item'
 #: crm/doctype/opportunity_item/opportunity_item.json
 msgctxt "Opportunity Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Packed Item'
 #: stock/doctype/packed_item/packed_item.json
 msgctxt "Packed Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Pick List Item'
 #: stock/doctype/pick_list_item/pick_list_item.json
 msgctxt "Pick List Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Pricing Rule'
 #: accounts/doctype/pricing_rule/pricing_rule.json
 msgctxt "Pricing Rule"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Product Bundle Item'
 #: selling/doctype/product_bundle_item/product_bundle_item.json
 msgctxt "Product Bundle Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Data field in DocType 'Production Plan Item Reference'
 #: manufacturing/doctype/production_plan_item_reference/production_plan_item_reference.json
 msgctxt "Production Plan Item Reference"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Promotional Scheme Product Discount'
 #: accounts/doctype/promotional_scheme_product_discount/promotional_scheme_product_discount.json
 msgctxt "Promotional Scheme Product Discount"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Serial and Batch Entry'
 #: stock/doctype/serial_and_batch_entry/serial_and_batch_entry.json
 msgctxt "Serial and Batch Entry"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Float field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
 msgctxt "Stock Entry Detail"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Option for the 'Reservation Based On' (Select) field in DocType 'Stock
 #. Reservation Entry'
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.json
 msgctxt "Stock Reservation Entry"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Option for the 'Distribute Additional Costs Based On ' (Select) field in
 #. DocType 'Subcontracting Order'
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.json
 msgctxt "Subcontracting Order"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Option for the 'Distribute Additional Costs Based On ' (Select) field in
 #. DocType 'Subcontracting Receipt'
 #: subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.json
 msgctxt "Subcontracting Receipt"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #. Label of a Section Break field in DocType 'Work Order Item'
 #: manufacturing/doctype/work_order_item/work_order_item.json
 msgctxt "Work Order Item"
 msgid "Qty"
-msgstr "تعداد"
+msgstr "مقدار"
 
 #: templates/pages/order.html:167
 msgid "Qty "
@@ -55276,7 +55109,7 @@
 #: public/js/controllers/transaction.js:298
 #: stock/doctype/stock_entry/stock_entry.js:143
 msgid "Quality Inspection(s)"
-msgstr "بازرسی کیفیت"
+msgstr "بازرسی(های) کیفیت"
 
 #: setup/doctype/company/company.py:377
 msgid "Quality Management"
@@ -55815,7 +55648,7 @@
 #. Name of a DocType
 #: erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.json
 msgid "QuickBooks Migrator"
-msgstr "QuickBooks Migrator"
+msgstr ""
 
 #. Label of a Data field in DocType 'QuickBooks Migrator'
 #: erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.json
@@ -55904,30 +55737,30 @@
 #. Name of a DocType
 #: setup/doctype/quotation_lost_reason/quotation_lost_reason.json
 msgid "Quotation Lost Reason"
-msgstr "نقل قول دلیل گمشده"
+msgstr "دلیل از دست رفتن نقل قول"
 
 #. Label of a Data field in DocType 'Quotation Lost Reason'
 #: setup/doctype/quotation_lost_reason/quotation_lost_reason.json
 msgctxt "Quotation Lost Reason"
 msgid "Quotation Lost Reason"
-msgstr "نقل قول دلیل گمشده"
+msgstr "دلیل از دست رفتن نقل قول"
 
 #. Label of a Link field in DocType 'Quotation Lost Reason Detail'
 #: setup/doctype/quotation_lost_reason_detail/quotation_lost_reason_detail.json
 msgctxt "Quotation Lost Reason Detail"
 msgid "Quotation Lost Reason"
-msgstr "نقل قول دلیل گمشده"
+msgstr "دلیل از دست رفتن نقل قول"
 
 #. Name of a DocType
 #: setup/doctype/quotation_lost_reason_detail/quotation_lost_reason_detail.json
 msgid "Quotation Lost Reason Detail"
-msgstr "نقل قول جزئیات دلیل گمشده"
+msgstr "جزئیات دلیل از دست رفتن نقل قول"
 
 #. Linked DocType in Quotation Lost Reason's connections
 #: setup/doctype/quotation_lost_reason/quotation_lost_reason.json
 msgctxt "Quotation Lost Reason"
 msgid "Quotation Lost Reason Detail"
-msgstr "نقل قول جزئیات دلیل گمشده"
+msgstr "جزئیات دلیل از دست رفتن نقل قول"
 
 #. Label of a Data field in DocType 'Supplier Quotation'
 #: buying/doctype/supplier_quotation/supplier_quotation.json
@@ -57627,7 +57460,7 @@
 
 #: accounts/doctype/journal_entry/journal_entry.py:899
 msgid "Reference #{0} dated {1}"
-msgstr "مرجع شماره {0} به تاریخ {1}"
+msgstr "مرجع #{0} به تاریخ {1}"
 
 #: public/js/bank_reconciliation_tool/dialog_manager.js:112
 msgid "Reference Date"
@@ -58057,7 +57890,7 @@
 #: erpnext_integrations/doctype/quickbooks_migrator/quickbooks_migrator.json
 msgctxt "QuickBooks Migrator"
 msgid "Refresh Token"
-msgstr "Refresh Token"
+msgstr ""
 
 #: stock/reorder_item.py:303
 msgid "Regards,"
@@ -59908,13 +59741,13 @@
 #: accounts/doctype/account/account.json
 msgctxt "Account"
 msgid "Rgt"
-msgstr "Rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Company'
 #: setup/doctype/company/company.json
 msgctxt "Company"
 msgid "Rgt"
-msgstr "Rgt"
+msgstr ""
 
 #. Label of a Link field in DocType 'Bisect Nodes'
 #: accounts/doctype/bisect_nodes/bisect_nodes.json
@@ -60466,7 +60299,7 @@
 
 #: accounts/doctype/bank_clearance/bank_clearance.py:97
 msgid "Row #{0}: Clearance date {1} cannot be before Cheque Date {2}"
-msgstr "ردیف شماره {0}: تاریخ پاکسازی {1} نمی تواند قبل از تاریخ بررسی {2} باشد"
+msgstr "ردیف شماره #{0}: تاریخ پاکسازی {1} نمی تواند قبل از تاریخ بررسی {2} باشد"
 
 #: assets/doctype/asset_capitalization/asset_capitalization.py:286
 msgid "Row #{0}: Consumed Asset {1} cannot be Draft"
@@ -60570,7 +60403,7 @@
 
 #: accounts/doctype/payment_entry/payment_entry.py:657
 msgid "Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher"
-msgstr "ردیف شماره {0}: ورودی مجله {1} دارای حساب {2} نیست یا قبلاً با کوپن دیگری مطابقت دارد"
+msgstr "ردیف #{0}: ورودی مجله {1} دارای حساب {2} نیست یا قبلاً با کوپن دیگری مطابقت دارد"
 
 #: stock/doctype/item/item.py:351
 msgid "Row #{0}: Maximum Net Rate cannot be greater than Minimum Net Rate"
@@ -60671,8 +60504,7 @@
 msgstr "ردیف #{0}: تعداد مورد ضایعات نمی تواند صفر باشد"
 
 #: controllers/selling_controller.py:212
-msgid ""
-"Row #{0}: Selling rate for item {1} is lower than its {2}.\n"
+msgid "Row #{0}: Selling rate for item {1} is lower than its {2}.\n"
 "\t\t\t\t\tSelling {3} should be atleast {4}.<br><br>Alternatively,\n"
 "\t\t\t\t\tyou can disable selling price validation in {5} to bypass\n"
 "\t\t\t\t\tthis validation."
@@ -60712,7 +60544,7 @@
 
 #: accounts/doctype/journal_entry/journal_entry.py:381
 msgid "Row #{0}: Status must be {1} for Invoice Discounting {2}"
-msgstr "ردیف شماره {0}: وضعیت باید {1} برای تخفیف فاکتور {2} باشد"
+msgstr "ردیف #{0}: وضعیت باید {1} برای تخفیف فاکتور {2} باشد"
 
 #: stock/doctype/stock_reservation_entry/stock_reservation_entry.py:273
 msgid "Row #{0}: Stock cannot be reserved for Item {1} against a disabled Batch {2}."
@@ -60780,7 +60612,7 @@
 
 #: assets/doctype/asset_category/asset_category.py:88
 msgid "Row #{0}: {1} of {2} should be {3}. Please update the {1} or select a different account."
-msgstr "ردیف شماره {0}: {1} از {2} باید {3} باشد. لطفاً {1} را به روز کنید یا حساب دیگری را انتخاب کنید."
+msgstr "ردیف #{0}: {1} از {2} باید {3} باشد. لطفاً {1} را به روز کنید یا حساب دیگری را انتخاب کنید."
 
 #: buying/utils.py:106
 msgid "Row #{1}: Warehouse is mandatory for stock Item {0}"
@@ -60820,7 +60652,7 @@
 
 #: assets/doctype/asset_maintenance/asset_maintenance.py:43
 msgid "Row #{}: Please assign task to a member."
-msgstr ""
+msgstr "ردیف #{}: لطفاً کار را به یک عضو اختصاص دهید."
 
 #: assets/doctype/asset/asset.py:300
 msgid "Row #{}: Please use a different Finance Book."
@@ -60836,7 +60668,7 @@
 
 #: accounts/doctype/pos_invoice/pos_invoice.py:371
 msgid "Row #{}: You cannot add positive quantities in a return invoice. Please remove item {} to complete the return."
-msgstr ""
+msgstr "ردیف #{}: نمی توانید مقادیر مثبت را در فاکتور برگشتی اضافه کنید. لطفاً مورد {} را برای تکمیل بازگشت حذف کنید."
 
 #: stock/doctype/pick_list/pick_list.py:83
 msgid "Row #{}: item {} has been picked already."
@@ -61246,31 +61078,31 @@
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.json
 msgctxt "Serial and Batch Bundle"
 msgid "SABB-.########"
-msgstr "SABB-.########"
+msgstr ""
 
 #. Option for the 'Naming Series' (Select) field in DocType 'Campaign'
 #: crm/doctype/campaign/campaign.json
 msgctxt "Campaign"
 msgid "SAL-CAM-.YYYY.-"
-msgstr "SAL-CAM-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Sales Order'
 #: selling/doctype/sales_order/sales_order.json
 msgctxt "Sales Order"
 msgid "SAL-ORD-.YYYY.-"
-msgstr "SAL-ORD-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Quotation'
 #: selling/doctype/quotation/quotation.json
 msgctxt "Quotation"
 msgid "SAL-QTN-.YYYY.-"
-msgstr "SAL-QTN-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Subcontracting Order'
 #: subcontracting/doctype/subcontracting_order/subcontracting_order.json
 msgctxt "Subcontracting Order"
 msgid "SC-ORD-.YYYY.-"
-msgstr "SC-ORD-.YYYY.-"
+msgstr ""
 
 #. Label of a Data field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
@@ -61282,7 +61114,7 @@
 #: support/doctype/warranty_claim/warranty_claim.json
 msgctxt "Warranty Claim"
 msgid "SER-WRN-.YYYY.-"
-msgstr "SER-WRN-.YYYY.-"
+msgstr ""
 
 #. Label of a Table field in DocType 'Service Level Agreement'
 #: support/doctype/service_level_agreement/service_level_agreement.json
@@ -61338,7 +61170,7 @@
 
 #: selling/report/pending_so_items_for_purchase_request/pending_so_items_for_purchase_request.py:43
 msgid "SO Qty"
-msgstr "SO Qty"
+msgstr ""
 
 #: accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.html:16
 msgid "STATEMENTS OF ACCOUNTS"
@@ -61348,19 +61180,19 @@
 #: stock/doctype/item/item.json
 msgctxt "Item"
 msgid "STO-ITEM-.YYYY.-"
-msgstr "STO-ITEM-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Pick List'
 #: stock/doctype/pick_list/pick_list.json
 msgctxt "Pick List"
 msgid "STO-PICK-.YYYY.-"
-msgstr "STO-PICK-.YYYY.-"
+msgstr ""
 
 #. Option for the 'Series' (Select) field in DocType 'Supplier'
 #: buying/doctype/supplier/supplier.json
 msgctxt "Supplier"
 msgid "SUP-.YYYY.-"
-msgstr "SUP-.YYYY.-"
+msgstr ""
 
 #. Label of a Read Only field in DocType 'Payment Request'
 #: accounts/doctype/payment_request/payment_request.json
@@ -62976,8 +62808,7 @@
 #. 'Supplier Scorecard'
 #: buying/doctype/supplier_scorecard/supplier_scorecard.json
 msgctxt "Supplier Scorecard"
-msgid ""
-"Scorecard variables can be used, as well as:\n"
+msgid "Scorecard variables can be used, as well as:\n"
 "{total_score} (the total score from that period),\n"
 "{period_number} (the number of periods to present day)\n"
 msgstr ""
@@ -63335,7 +63166,7 @@
 #: accounts/report/balance_sheet/balance_sheet.js:14
 #: accounts/report/profit_and_loss_statement/profit_and_loss_statement.js:14
 msgid "Select View"
-msgstr "View را انتخاب کنید"
+msgstr ""
 
 #: public/js/bank_reconciliation_tool/dialog_manager.js:248
 msgid "Select Vouchers to Match"
@@ -63456,8 +63287,7 @@
 msgstr "کد نوع مورد را برای مورد الگو انتخاب کنید {0}"
 
 #: manufacturing/doctype/production_plan/production_plan.js:525
-msgid ""
-"Select whether to get items from a Sales Order or a Material Request. For now select <b>Sales Order</b>.\n"
+msgid "Select whether to get items from a Sales Order or a Material Request. For now select <b>Sales Order</b>.\n"
 " A Production Plan can also be created manually where you can select the Items to manufacture."
 msgstr ""
 
@@ -64018,7 +63848,7 @@
 
 #: stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py:2112
 msgid "Serial No {0} does not exists"
-msgstr "شماره سریال {0} وجود ندارد"
+msgstr ""
 
 #: public/js/utils/barcode_scanner.js:402
 msgid "Serial No {0} has already scanned."
@@ -65008,7 +64838,7 @@
 #: public/js/utils/sales_common.js:406
 #: selling/doctype/quotation/quotation.js:124
 msgid "Set as Lost"
-msgstr "به عنوان گمشده تنظیم کنید"
+msgstr "به عنوان از دست رفته ست کنید"
 
 #: crm/doctype/opportunity/opportunity_list.js:13
 #: projects/doctype/task/task_list.js:8 support/doctype/issue/issue_list.js:8
@@ -65758,7 +65588,7 @@
 #: accounts/doctype/bank_statement_import/bank_statement_import.json
 msgctxt "Bank Statement Import"
 msgid "Show Failed Logs"
-msgstr "نمایش گزارش های ناموفق"
+msgstr ""
 
 #: accounts/report/accounts_payable/accounts_payable.js:144
 #: accounts/report/accounts_receivable/accounts_receivable.js:161
@@ -65989,8 +65819,7 @@
 #. 'Item Quality Inspection Parameter'
 #: stock/doctype/item_quality_inspection_parameter/item_quality_inspection_parameter.json
 msgctxt "Item Quality Inspection Parameter"
-msgid ""
-"Simple Python formula applied on Reading fields.<br> Numeric eg. 1: <b>reading_1 &gt; 0.2 and reading_1 &lt; 0.5</b><br>\n"
+msgid "Simple Python formula applied on Reading fields.<br> Numeric eg. 1: <b>reading_1 &gt; 0.2 and reading_1 &lt; 0.5</b><br>\n"
 "Numeric eg. 2: <b>mean &gt; 3.5</b> (mean of populated fields)<br>\n"
 "Value based eg.:  <b>reading_value in (\"A\", \"B\", \"C\")</b>"
 msgstr ""
@@ -65999,8 +65828,7 @@
 #. 'Quality Inspection Reading'
 #: stock/doctype/quality_inspection_reading/quality_inspection_reading.json
 msgctxt "Quality Inspection Reading"
-msgid ""
-"Simple Python formula applied on Reading fields.<br> Numeric eg. 1: <b>reading_1 &gt; 0.2 and reading_1 &lt; 0.5</b><br>\n"
+msgid "Simple Python formula applied on Reading fields.<br> Numeric eg. 1: <b>reading_1 &gt; 0.2 and reading_1 &lt; 0.5</b><br>\n"
 "Numeric eg. 2: <b>mean &gt; 3.5</b> (mean of populated fields)<br>\n"
 "Value based eg.:  <b>reading_value in (\"A\", \"B\", \"C\")</b>"
 msgstr ""
@@ -68117,10 +67945,13 @@
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on MR'
 #. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on PO' (Select) field in
+#. DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on PO'
+#. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on Actual' (Select) field
 #. in DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on Actual'
+#. (Select) field in DocType 'Budget'
 #: accounts/doctype/budget/budget.json
 msgctxt "Budget"
 msgid "Stop"
@@ -70119,6 +69950,7 @@
 #. Description of the 'Invoice Limit' (Int) field in DocType 'Payment
 #. Reconciliation'
 #. Description of the 'Payment Limit' (Int) field in DocType 'Payment
+#. Reconciliation'
 #: accounts/doctype/payment_reconciliation/payment_reconciliation.json
 msgctxt "Payment Reconciliation"
 msgid "System will fetch all the entries if limit value is zero."
@@ -70158,7 +69990,7 @@
 #: projects/doctype/timesheet/timesheet.json
 msgctxt "Timesheet"
 msgid "TS-.YYYY.-"
-msgstr "TS-.YYYY.-"
+msgstr ""
 
 #: buying/doctype/request_for_quotation/request_for_quotation.js:427
 msgid "Tag"
@@ -71101,8 +70933,7 @@
 #. Item'
 #: accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
 msgctxt "Purchase Invoice Item"
-msgid ""
-"Tax detail table fetched from item master as a string and stored in this field.\n"
+msgid "Tax detail table fetched from item master as a string and stored in this field.\n"
 "Used for Taxes and Charges"
 msgstr ""
 
@@ -71110,8 +70941,7 @@
 #. Item'
 #: buying/doctype/purchase_order_item/purchase_order_item.json
 msgctxt "Purchase Order Item"
-msgid ""
-"Tax detail table fetched from item master as a string and stored in this field.\n"
+msgid "Tax detail table fetched from item master as a string and stored in this field.\n"
 "Used for Taxes and Charges"
 msgstr ""
 
@@ -71119,8 +70949,7 @@
 #. Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
-msgid ""
-"Tax detail table fetched from item master as a string and stored in this field.\n"
+msgid "Tax detail table fetched from item master as a string and stored in this field.\n"
 "Used for Taxes and Charges"
 msgstr ""
 
@@ -71128,8 +70957,7 @@
 #. Quotation Item'
 #: buying/doctype/supplier_quotation_item/supplier_quotation_item.json
 msgctxt "Supplier Quotation Item"
-msgid ""
-"Tax detail table fetched from item master as a string and stored in this field.\n"
+msgid "Tax detail table fetched from item master as a string and stored in this field.\n"
 "Used for Taxes and Charges"
 msgstr ""
 
@@ -72241,7 +72069,7 @@
 #: accounts/doctype/journal_entry/journal_entry.py:155
 #: accounts/doctype/journal_entry/journal_entry.py:162
 msgid "The task has been enqueued as a background job."
-msgstr "وظیفه به عنوان یک کار پس زمینه در نوبت قرار گرفته است."
+msgstr ""
 
 #: stock/doctype/stock_entry/stock_entry.py:244
 msgid "The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Entry and revert to the Draft stage"
@@ -74981,7 +74809,7 @@
 
 #: controllers/trends.py:23 controllers/trends.py:30
 msgid "Total(Qty)"
-msgstr "مجموع تعداد)"
+msgstr "مجموع (مقدار)"
 
 #: accounts/report/trial_balance_for_party/trial_balance_for_party.py:88
 msgid "Totals"
@@ -75230,7 +75058,7 @@
 
 #: accounts/doctype/bank_transaction/bank_transaction.py:64
 msgid "Transaction currency: {0} cannot be different from Bank Account({1}) currency: {2}"
-msgstr "واحد پول تراکنش: {0} نمی تواند با واحد پول حساب بانکی ({1}) متفاوت باشد: {2}"
+msgstr ""
 
 #: manufacturing/doctype/job_card/job_card.py:647
 msgid "Transaction not allowed against stopped Work Order {0}"
@@ -75754,235 +75582,235 @@
 #: templates/emails/reorder_item.html:11
 #: templates/includes/rfq/rfq_items.html:17
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Asset Capitalization Service Item'
 #: assets/doctype/asset_capitalization_service_item/asset_capitalization_service_item.json
 msgctxt "Asset Capitalization Service Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'BOM Creator'
 #: manufacturing/doctype/bom_creator/bom_creator.json
 msgctxt "BOM Creator"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'BOM Creator Item'
 #: manufacturing/doctype/bom_creator_item/bom_creator_item.json
 msgctxt "BOM Creator Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'BOM Item'
 #: manufacturing/doctype/bom_item/bom_item.json
 msgctxt "BOM Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Bin'
 #: stock/doctype/bin/bin.json
 msgctxt "Bin"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Delivery Note Item'
 #: stock/doctype/delivery_note_item/delivery_note_item.json
 msgctxt "Delivery Note Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Delivery Stop'
 #: stock/doctype/delivery_stop/delivery_stop.json
 msgctxt "Delivery Stop"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Item Price'
 #: stock/doctype/item_price/item_price.json
 msgctxt "Item Price"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Job Card Item'
 #: manufacturing/doctype/job_card_item/job_card_item.json
 msgctxt "Job Card Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Material Request Item'
 #: stock/doctype/material_request_item/material_request_item.json
 msgctxt "Material Request Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Material Request Plan Item'
 #: manufacturing/doctype/material_request_plan_item/material_request_plan_item.json
 msgctxt "Material Request Plan Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Opportunity Item'
 #: crm/doctype/opportunity_item/opportunity_item.json
 msgctxt "Opportunity Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'POS Invoice Item'
 #: accounts/doctype/pos_invoice_item/pos_invoice_item.json
 msgctxt "POS Invoice Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Packed Item'
 #: stock/doctype/packed_item/packed_item.json
 msgctxt "Packed Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Packing Slip Item'
 #: stock/doctype/packing_slip_item/packing_slip_item.json
 msgctxt "Packing Slip Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Pick List Item'
 #: stock/doctype/pick_list_item/pick_list_item.json
 msgctxt "Pick List Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Pricing Rule'
 #: accounts/doctype/pricing_rule/pricing_rule.json
 msgctxt "Pricing Rule"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Pricing Rule Brand'
 #: accounts/doctype/pricing_rule_brand/pricing_rule_brand.json
 msgctxt "Pricing Rule Brand"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Pricing Rule Item Code'
 #: accounts/doctype/pricing_rule_item_code/pricing_rule_item_code.json
 msgctxt "Pricing Rule Item Code"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Pricing Rule Item Group'
 #: accounts/doctype/pricing_rule_item_group/pricing_rule_item_group.json
 msgctxt "Pricing Rule Item Group"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Product Bundle Item'
 #: selling/doctype/product_bundle_item/product_bundle_item.json
 msgctxt "Product Bundle Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Production Plan Item'
 #: manufacturing/doctype/production_plan_item/production_plan_item.json
 msgctxt "Production Plan Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Production Plan Sub Assembly Item'
 #: manufacturing/doctype/production_plan_sub_assembly_item/production_plan_sub_assembly_item.json
 msgctxt "Production Plan Sub Assembly Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Promotional Scheme Product Discount'
 #: accounts/doctype/promotional_scheme_product_discount/promotional_scheme_product_discount.json
 msgctxt "Promotional Scheme Product Discount"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Purchase Invoice Item'
 #: accounts/doctype/purchase_invoice_item/purchase_invoice_item.json
 msgctxt "Purchase Invoice Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Purchase Order Item'
 #: buying/doctype/purchase_order_item/purchase_order_item.json
 msgctxt "Purchase Order Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Purchase Receipt Item'
 #: stock/doctype/purchase_receipt_item/purchase_receipt_item.json
 msgctxt "Purchase Receipt Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Putaway Rule'
 #: stock/doctype/putaway_rule/putaway_rule.json
 msgctxt "Putaway Rule"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Quality Goal Objective'
 #: quality_management/doctype/quality_goal_objective/quality_goal_objective.json
 msgctxt "Quality Goal Objective"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Quality Review Objective'
 #: quality_management/doctype/quality_review_objective/quality_review_objective.json
 msgctxt "Quality Review Objective"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Quotation Item'
 #: selling/doctype/quotation_item/quotation_item.json
 msgctxt "Quotation Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Request for Quotation Item'
 #: buying/doctype/request_for_quotation_item/request_for_quotation_item.json
 msgctxt "Request for Quotation Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Sales Invoice Item'
 #: accounts/doctype/sales_invoice_item/sales_invoice_item.json
 msgctxt "Sales Invoice Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Sales Order Item'
 #: selling/doctype/sales_order_item/sales_order_item.json
 msgctxt "Sales Order Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Stock Entry Detail'
 #: stock/doctype/stock_entry_detail/stock_entry_detail.json
 msgctxt "Stock Entry Detail"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'Supplier Quotation Item'
 #: buying/doctype/supplier_quotation_item/supplier_quotation_item.json
 msgctxt "Supplier Quotation Item"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Label of a Link field in DocType 'UOM Conversion Detail'
 #: stock/doctype/uom_conversion_detail/uom_conversion_detail.json
 msgctxt "UOM Conversion Detail"
 msgid "UOM"
-msgstr "UOM"
+msgstr "واحد اندازه گیری"
 
 #. Name of a DocType
 #: stock/doctype/uom_category/uom_category.json
@@ -76111,13 +75939,13 @@
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "UPC"
-msgstr "UPC"
+msgstr ""
 
 #. Option for the 'Barcode Type' (Select) field in DocType 'Item Barcode'
 #: stock/doctype/item_barcode/item_barcode.json
 msgctxt "Item Barcode"
 msgid "UPC-A"
-msgstr "UPC-A"
+msgstr ""
 
 #. Label of a Data field in DocType 'Video'
 #: utilities/doctype/video/video.json
@@ -76493,7 +76321,7 @@
 
 #: accounts/doctype/bisect_accounting_statements/bisect_accounting_statements.js:17
 msgid "Up"
-msgstr ""
+msgstr "بالا"
 
 #. Label of a Check field in DocType 'Email Digest'
 #: setup/doctype/email_digest/email_digest.json
@@ -76736,6 +76564,7 @@
 #. Description of the 'Actual End Time' (Datetime) field in DocType 'Work Order
 #. Operation'
 #. Description of the 'Actual Operation Time' (Float) field in DocType 'Work
+#. Order Operation'
 #: manufacturing/doctype/work_order_operation/work_order_operation.json
 msgctxt "Work Order Operation"
 msgid "Updated via 'Time Log' (In Minutes)"
@@ -77812,7 +77641,7 @@
 #: utilities/doctype/video/video.json
 msgctxt "Video"
 msgid "Vimeo"
-msgstr "Vimeo"
+msgstr ""
 
 #: templates/pages/help.html:46
 msgid "Visit the forums"
@@ -78435,7 +78264,7 @@
 
 #: stock/page/warehouse_capacity_summary/warehouse_capacity_summary.js:4
 msgid "Warehouse Capacity Summary"
-msgstr "خلاصه ظرفیت انبار"
+msgstr ""
 
 #: stock/doctype/putaway_rule/putaway_rule.py:78
 msgid "Warehouse Capacity for Item '{0}' must be greater than the existing stock level of {1} {2}."
@@ -78628,10 +78457,13 @@
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on MR'
 #. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on PO' (Select) field in
+#. DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on PO'
+#. (Select) field in DocType 'Budget'
 #. Option for the 'Action if Annual Budget Exceeded on Actual' (Select) field
 #. in DocType 'Budget'
 #. Option for the 'Action if Accumulated Monthly Budget Exceeded on Actual'
+#. (Select) field in DocType 'Budget'
 #: accounts/doctype/budget/budget.json
 msgctxt "Budget"
 msgid "Warn"
@@ -80416,7 +80248,7 @@
 #: selling/report/sales_partner_commission_summary/sales_partner_commission_summary.py:25
 #: selling/report/sales_partner_transaction_summary/sales_partner_transaction_summary.py:25
 msgid "doctype"
-msgstr "doctype"
+msgstr ""
 
 #. Description of the 'Coupon Name' (Data) field in DocType 'Coupon Code'
 #: accounts/doctype/coupon_code/coupon_code.json
@@ -80443,7 +80275,7 @@
 #: accounts/doctype/currency_exchange_settings/currency_exchange_settings.json
 msgctxt "Currency Exchange Settings"
 msgid "frankfurter.app"
-msgstr "frankfurter.app"
+msgstr ""
 
 #. Label of a Attach Image field in DocType 'Batch'
 #: stock/doctype/batch/batch.json
@@ -80596,6 +80428,7 @@
 #. Description of the 'Billing Rate' (Currency) field in DocType 'Activity
 #. Cost'
 #. Description of the 'Costing Rate' (Currency) field in DocType 'Activity
+#. Cost'
 #: projects/doctype/activity_cost/activity_cost.json
 msgctxt "Activity Cost"
 msgid "per hour"
@@ -80604,6 +80437,7 @@
 #. Description of the 'Electricity Cost' (Currency) field in DocType
 #. 'Workstation'
 #. Description of the 'Consumable Cost' (Currency) field in DocType
+#. 'Workstation'
 #. Description of the 'Rent Cost' (Currency) field in DocType 'Workstation'
 #. Description of the 'Net Hour Rate' (Currency) field in DocType 'Workstation'
 #: manufacturing/doctype/workstation/workstation.json
@@ -80614,9 +80448,11 @@
 #. Description of the 'Electricity Cost' (Currency) field in DocType
 #. 'Workstation Type'
 #. Description of the 'Consumable Cost' (Currency) field in DocType
+#. 'Workstation Type'
 #. Description of the 'Rent Cost' (Currency) field in DocType 'Workstation
 #. Type'
 #. Description of the 'Net Hour Rate' (Currency) field in DocType 'Workstation
+#. Type'
 #: manufacturing/doctype/workstation_type/workstation_type.json
 msgctxt "Workstation Type"
 msgid "per hour"
@@ -80644,7 +80480,7 @@
 #: selling/doctype/sales_order_item/sales_order_item.json
 msgctxt "Sales Order Item"
 msgid "quotation_item"
-msgstr "quotation_item"
+msgstr ""
 
 #: templates/includes/macros.html:202
 msgid "ratings"
@@ -80658,67 +80494,67 @@
 #: accounts/doctype/cost_center/cost_center.json
 msgctxt "Cost Center"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Customer Group'
 #: setup/doctype/customer_group/customer_group.json
 msgctxt "Customer Group"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Department'
 #: setup/doctype/department/department.json
 msgctxt "Department"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Employee'
 #: setup/doctype/employee/employee.json
 msgctxt "Employee"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Item Group'
 #: setup/doctype/item_group/item_group.json
 msgctxt "Item Group"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Location'
 #: assets/doctype/location/location.json
 msgctxt "Location"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Sales Person'
 #: setup/doctype/sales_person/sales_person.json
 msgctxt "Sales Person"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Supplier Group'
 #: setup/doctype/supplier_group/supplier_group.json
 msgctxt "Supplier Group"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Task'
 #: projects/doctype/task/task.json
 msgctxt "Task"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Territory'
 #: setup/doctype/territory/territory.json
 msgctxt "Territory"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Label of a Int field in DocType 'Warehouse'
 #: stock/doctype/warehouse/warehouse.json
 msgctxt "Warehouse"
 msgid "rgt"
-msgstr "rgt"
+msgstr ""
 
 #. Option for the 'Plaid Environment' (Select) field in DocType 'Plaid
 #. Settings'
@@ -80737,7 +80573,7 @@
 
 #: controllers/status_updater.py:353 controllers/status_updater.py:373
 msgid "target_ref_field"
-msgstr "target_ref_field"
+msgstr ""
 
 #. Label of a Data field in DocType 'Production Plan Item'
 #: manufacturing/doctype/production_plan_item/production_plan_item.json
@@ -80790,7 +80626,7 @@
 #: accounts/report/cash_flow/cash_flow.py:226
 #: accounts/report/cash_flow/cash_flow.py:227
 msgid "{0}"
-msgstr "{0}"
+msgstr ""
 
 #: controllers/accounts_controller.py:878
 msgid "{0} '{1}' is disabled"
@@ -80932,7 +80768,7 @@
 
 #: accounts/doctype/payment_entry/payment_entry.py:364
 msgid "{0} has Payment Term based allocation enabled. Select a Payment Term for Row #{1} in Payment References section"
-msgstr "{0} تخصیص مبتنی بر مدت پرداخت را فعال کرده است. در بخش مراجع پرداخت، یک شرایط پرداخت برای ردیف شماره {1} انتخاب کنید"
+msgstr "{0} تخصیص مبتنی بر مدت پرداخت را فعال کرده است. در بخش مراجع پرداخت، یک شرایط پرداخت برای ردیف #{1} انتخاب کنید"
 
 #: setup/default_success_action.py:14
 msgid "{0} has been submitted successfully"
@@ -81088,11 +80924,11 @@
 
 #: manufacturing/doctype/job_card/job_card.py:773
 msgid "{0} {1}"
-msgstr "{0} {1}"
+msgstr ""
 
 #: public/js/utils/serial_no_batch_selector.js:203
 msgid "{0} {1} Manually"
-msgstr "{0} {1} به صورت دستی"
+msgstr ""
 
 #: accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py:433
 msgid "{0} {1} Partially Reconciled"
@@ -81310,7 +81146,7 @@
 
 #: assets/report/fixed_asset_register/fixed_asset_register.py:372
 msgid "{}"
-msgstr "{}"
+msgstr ""
 
 #: controllers/buying_controller.py:712
 msgid "{} Assets created for {}"
diff --git a/erpnext/manufacturing/doctype/work_order/test_work_order.py b/erpnext/manufacturing/doctype/work_order/test_work_order.py
index c72232a..e1c1069 100644
--- a/erpnext/manufacturing/doctype/work_order/test_work_order.py
+++ b/erpnext/manufacturing/doctype/work_order/test_work_order.py
@@ -1383,8 +1383,9 @@
 
 		# Inward raw materials in Stores warehouse
 		ste_doc.submit()
+		ste_doc.reload()
 
-		serial_nos_list = sorted(get_serial_nos(ste_doc.items[0].serial_no))
+		serial_nos_list = sorted(get_serial_nos_from_bundle(ste_doc.items[0].serial_and_batch_bundle))
 
 		wo_doc = make_wo_order_test_record(production_item=fg_item, qty=4)
 		transferred_ste_doc = frappe.get_doc(
@@ -1396,19 +1397,22 @@
 
 		# First Manufacture stock entry
 		manufacture_ste_doc1 = frappe.get_doc(make_stock_entry(wo_doc.name, "Manufacture", 1))
+		manufacture_ste_doc1.submit()
+		manufacture_ste_doc1.reload()
 
 		# Serial nos should be same as transferred Serial nos
-		self.assertEqual(get_serial_nos(manufacture_ste_doc1.items[0].serial_no), serial_nos_list[0:1])
+		self.assertEqual(
+			sorted(get_serial_nos_from_bundle(manufacture_ste_doc1.items[0].serial_and_batch_bundle)),
+			serial_nos_list[0:1],
+		)
 		self.assertEqual(manufacture_ste_doc1.items[0].qty, 1)
 
-		manufacture_ste_doc1.submit()
-
 		# Second Manufacture stock entry
-		manufacture_ste_doc2 = frappe.get_doc(make_stock_entry(wo_doc.name, "Manufacture", 2))
+		manufacture_ste_doc2 = frappe.get_doc(make_stock_entry(wo_doc.name, "Manufacture", 3))
 
 		# Serial nos should be same as transferred Serial nos
-		self.assertEqual(get_serial_nos(manufacture_ste_doc2.items[0].serial_no), serial_nos_list[1:3])
-		self.assertEqual(manufacture_ste_doc2.items[0].qty, 2)
+		self.assertEqual(get_serial_nos(manufacture_ste_doc2.items[0].serial_no), serial_nos_list[1:4])
+		self.assertEqual(manufacture_ste_doc2.items[0].qty, 3)
 
 	def test_backflushed_serial_no_batch_raw_materials_based_on_transferred(self):
 		frappe.db.set_single_value(
@@ -1542,19 +1546,9 @@
 				row.qty -= 2
 				row.transfer_qty -= 2
 
-			if not row.serial_and_batch_bundle:
-				continue
-
-			bundle_id = row.serial_and_batch_bundle
-			bundle_doc = frappe.get_doc("Serial and Batch Bundle", bundle_id)
-			if bundle_doc.has_serial_no:
-				bundle_doc.set("entries", bundle_doc.entries[0:5])
-			else:
-				for bundle_row in bundle_doc.entries:
-					bundle_row.qty += 2
-
-			bundle_doc.save()
-			bundle_doc.load_from_db()
+			if row.serial_no:
+				serial_nos = get_serial_nos(row.serial_no)
+				row.serial_no = "\n".join(serial_nos[:5])
 
 		ste_doc.save()
 		ste_doc.submit()
@@ -1897,6 +1891,71 @@
 			"Manufacturing Settings", {"disable_capacity_planning": 1, "mins_between_operations": 0}
 		)
 
+	def test_partial_material_consumption_with_batch(self):
+		from erpnext.stock.doctype.stock_entry.test_stock_entry import (
+			make_stock_entry as make_stock_entry_test_record,
+		)
+
+		frappe.db.set_single_value("Manufacturing Settings", "material_consumption", 1)
+		frappe.db.set_single_value(
+			"Manufacturing Settings",
+			"backflush_raw_materials_based_on",
+			"Material Transferred for Manufacture",
+		)
+
+		fg_item = make_item(
+			"Test FG Item For Partial Material Consumption",
+			{"is_stock_item": 1},
+		).name
+
+		rm_item = make_item(
+			"Test RM Item For Partial Material Consumption",
+			{
+				"is_stock_item": 1,
+				"has_batch_no": 1,
+				"create_new_batch": 1,
+				"batch_number_series": "TST-BATCH-PMCC-.####",
+			},
+		).name
+
+		make_bom(
+			item=fg_item,
+			source_warehouse="Stores - _TC",
+			raw_materials=[rm_item],
+		)
+
+		make_stock_entry_test_record(
+			purpose="Material Receipt",
+			item_code=rm_item,
+			target="Stores - _TC",
+			qty=10,
+			basic_rate=100,
+		)
+
+		wo_order = make_wo_order_test_record(item=fg_item, qty=10)
+
+		stock_entry = frappe.get_doc(
+			make_stock_entry(wo_order.name, "Material Transfer for Manufacture", 10)
+		)
+		stock_entry.submit()
+		stock_entry.reload()
+
+		batch_no = get_batch_from_bundle(stock_entry.items[0].serial_and_batch_bundle)
+
+		stock_entry = frappe.get_doc(
+			make_stock_entry(wo_order.name, "Material Consumption for Manufacture", 10)
+		)
+
+		self.assertEqual(stock_entry.items[0].batch_no, batch_no)
+		self.assertEqual(stock_entry.items[0].use_serial_batch_fields, 1)
+
+		frappe.db.set_single_value("Manufacturing Settings", "material_consumption", 0)
+		frappe.db.set_single_value(
+			"Manufacturing Settings",
+			"backflush_raw_materials_based_on",
+			"BOM",
+		)
+
 
 def make_operation(**kwargs):
 	kwargs = frappe._dict(kwargs)
diff --git a/erpnext/public/js/utils/serial_no_batch_selector.js b/erpnext/public/js/utils/serial_no_batch_selector.js
index fccaf88..d0064b3 100644
--- a/erpnext/public/js/utils/serial_no_batch_selector.js
+++ b/erpnext/public/js/utils/serial_no_batch_selector.js
@@ -371,11 +371,18 @@
 					label: __('Batch No'),
 					in_list_view: 1,
 					get_query: () => {
+						let is_inward = false;
+						if ((["Purchase Receipt", "Purchase Invoice"].includes(this.frm.doc.doctype) && !this.frm.doc.is_return)
+							|| (this.frm.doc.doctype === 'Stock Entry' && this.frm.doc.purpose === 'Material Receipt')) {
+							is_inward = true;
+						}
+
 						return {
 							query : "erpnext.controllers.queries.get_batch_no",
 							filters: {
 								'item_code': this.item.item_code,
-								'warehouse': this.item.s_warehouse || this.item.t_warehouse,
+								'warehouse': this.item.s_warehouse || this.item.t_warehouse || this.item.warehouse,
+								'is_inward': is_inward
 							}
 						}
 					},
diff --git a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.js b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.js
index 6a50ef8..a7b0709 100644
--- a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.js
+++ b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.js
@@ -29,7 +29,7 @@
 });
 
 function populate_doctypes_to_be_ignored(doctypes_to_be_ignored_array, frm) {
-	if (!(frm.doc.doctypes_to_be_ignored)) {
+	if (frm.doc.doctypes_to_be_ignored.length === 0) {
 		var i;
 		for (i = 0; i < doctypes_to_be_ignored_array.length; i++) {
 			frm.add_child('doctypes_to_be_ignored', {
diff --git a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
index 7182201..88c4b07 100644
--- a/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
+++ b/erpnext/setup/doctype/transaction_deletion_record/transaction_deletion_record.py
@@ -286,6 +286,7 @@
 		"Bank Account",
 		"Item Tax Template",
 		"Mode of Payment",
+		"Mode of Payment Account",
 		"Item Default",
 		"Customer",
 		"Supplier",
diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py
index 02fbd3d..ace84f8 100644
--- a/erpnext/stock/doctype/material_request/material_request.py
+++ b/erpnext/stock/doctype/material_request/material_request.py
@@ -595,17 +595,28 @@
 	for d in doc.items:
 		item_list.append(d.item_code)
 
-	return frappe.db.sql(
-		"""select default_supplier
-		from `tabItem Default`
-		where parent in ({0}) and
-		default_supplier IS NOT NULL
-		""".format(
-			", ".join(["%s"] * len(item_list))
-		),
-		tuple(item_list),
+	supplier = frappe.qb.DocType("Supplier")
+	item_default = frappe.qb.DocType("Item Default")
+	query = (
+		frappe.qb.from_(supplier)
+		.left_join(item_default)
+		.on(supplier.name == item_default.default_supplier)
+		.select(item_default.default_supplier)
+		.where(
+			(item_default.parent.isin(item_list))
+			& (item_default.default_supplier.notnull())
+			& (supplier[searchfield].like(f"%{txt}%"))
+		)
+		.offset(start)
+		.limit(page_len)
 	)
 
+	meta = frappe.get_meta("Supplier")
+	if meta.show_title_field_in_link and meta.title_field:
+		query = query.select(supplier[meta.title_field])
+
+	return query.run(as_dict=False)
+
 
 @frappe.whitelist()
 def make_supplier_quotation(source_name, target_doc=None):
diff --git a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
index aa17ab4..fa2c21f 100644
--- a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py
@@ -2477,6 +2477,88 @@
 		pr.reload()
 		self.assertEqual(pr.per_billed, 100)
 
+	def test_purchase_receipt_with_use_serial_batch_field_for_rejected_qty(self):
+		batch_item = make_item(
+			"_Test Purchase Receipt Batch Item For Rejected Qty",
+			properties={"has_batch_no": 1, "create_new_batch": 1, "is_stock_item": 1},
+		).name
+
+		serial_item = make_item(
+			"_Test Purchase Receipt Serial Item for Rejected Qty",
+			properties={"has_serial_no": 1, "is_stock_item": 1},
+		).name
+
+		rej_warehouse = create_warehouse("_Test Purchase Warehouse For Rejected Qty")
+
+		batch_no = "BATCH-BNU-TPRBI-0001"
+		serial_nos = ["SNU-TPRSI-0001", "SNU-TPRSI-0002", "SNU-TPRSI-0003"]
+
+		if not frappe.db.exists("Batch", batch_no):
+			frappe.get_doc(
+				{
+					"doctype": "Batch",
+					"batch_id": batch_no,
+					"item": batch_item,
+				}
+			).insert()
+
+		for serial_no in serial_nos:
+			if not frappe.db.exists("Serial No", serial_no):
+				frappe.get_doc(
+					{
+						"doctype": "Serial No",
+						"item_code": serial_item,
+						"serial_no": serial_no,
+					}
+				).insert()
+
+		pr = make_purchase_receipt(
+			item_code=batch_item,
+			received_qty=10,
+			qty=8,
+			rejected_qty=2,
+			rejected_warehouse=rej_warehouse,
+			use_serial_batch_fields=1,
+			batch_no=batch_no,
+			rate=100,
+			do_not_submit=1,
+		)
+
+		pr.append(
+			"items",
+			{
+				"item_code": serial_item,
+				"qty": 2,
+				"rate": 100,
+				"base_rate": 100,
+				"item_name": serial_item,
+				"uom": "Nos",
+				"stock_uom": "Nos",
+				"conversion_factor": 1,
+				"rejected_qty": 1,
+				"warehouse": pr.items[0].warehouse,
+				"rejected_warehouse": rej_warehouse,
+				"use_serial_batch_fields": 1,
+				"serial_no": "\n".join(serial_nos[:2]),
+				"rejected_serial_no": serial_nos[2],
+			},
+		)
+
+		pr.save()
+		pr.submit()
+
+		pr.reload()
+
+		for row in pr.items:
+			self.assertTrue(row.serial_and_batch_bundle)
+			self.assertTrue(row.rejected_serial_and_batch_bundle)
+
+			if row.item_code == batch_item:
+				self.assertEqual(row.batch_no, batch_no)
+			else:
+				self.assertEqual(row.serial_no, "\n".join(serial_nos[:2]))
+				self.assertEqual(row.rejected_serial_no, serial_nos[2])
+
 
 def prepare_data_for_internal_transfer():
 	from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_internal_supplier
diff --git a/erpnext/stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py b/erpnext/stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py
index d01dfef..08cb3ca 100644
--- a/erpnext/stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py
+++ b/erpnext/stock/doctype/serial_and_batch_bundle/serial_and_batch_bundle.py
@@ -847,7 +847,7 @@
 
 		available_batches = get_available_batches_qty(available_batches)
 		for batch_no in batches:
-			if batch_no not in available_batches or available_batches[batch_no] < 0:
+			if batch_no in available_batches and available_batches[batch_no] < 0:
 				if flt(available_batches.get(batch_no)) < 0:
 					self.validate_negative_batch(batch_no, available_batches[batch_no])
 
@@ -1263,6 +1263,13 @@
 	if parent_doc.get("is_return"):
 		type_of_transaction = "Inward" if type_of_transaction == "Outward" else "Outward"
 
+	if parent_doc.get("doctype") == "Subcontracting Receipt":
+		type_of_transaction = "Outward"
+		if child_row.get("doctype") == "Subcontracting Receipt Item":
+			type_of_transaction = "Inward"
+	elif parent_doc.get("doctype") == "Stock Reconciliation":
+		type_of_transaction = "Inward"
+
 	return type_of_transaction
 
 
diff --git a/erpnext/stock/doctype/shipment_parcel/shipment_parcel.json b/erpnext/stock/doctype/shipment_parcel/shipment_parcel.json
index 6943edc..0dc4fd1 100644
--- a/erpnext/stock/doctype/shipment_parcel/shipment_parcel.json
+++ b/erpnext/stock/doctype/shipment_parcel/shipment_parcel.json
@@ -16,22 +16,19 @@
    "fieldname": "length",
    "fieldtype": "Int",
    "in_list_view": 1,
-   "label": "Length (cm)",
-   "reqd": 1
+   "label": "Length (cm)"
   },
   {
    "fieldname": "width",
    "fieldtype": "Int",
    "in_list_view": 1,
-   "label": "Width (cm)",
-   "reqd": 1
+   "label": "Width (cm)"
   },
   {
    "fieldname": "height",
    "fieldtype": "Int",
    "in_list_view": 1,
-   "label": "Height (cm)",
-   "reqd": 1
+   "label": "Height (cm)"
   },
   {
    "fieldname": "weight",
@@ -52,7 +49,7 @@
  ],
  "istable": 1,
  "links": [],
- "modified": "2020-07-09 12:54:14.847170",
+ "modified": "2024-03-06 16:48:57.355757",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Shipment Parcel",
@@ -61,5 +58,6 @@
  "quick_entry": 1,
  "sort_field": "modified",
  "sort_order": "DESC",
+ "states": [],
  "track_changes": 1
 }
\ No newline at end of file
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py
index 399e698..f79803c 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.py
@@ -10,17 +10,7 @@
 from frappe import _
 from frappe.model.mapper import get_mapped_doc
 from frappe.query_builder.functions import Sum
-from frappe.utils import (
-	cint,
-	comma_or,
-	cstr,
-	flt,
-	format_time,
-	formatdate,
-	getdate,
-	month_diff,
-	nowdate,
-)
+from frappe.utils import cint, comma_or, cstr, flt, format_time, formatdate, getdate, nowdate
 
 import erpnext
 from erpnext.accounts.general_ledger import process_gl_map
@@ -237,41 +227,6 @@
 			self.reset_default_field_value("from_warehouse", "items", "s_warehouse")
 			self.reset_default_field_value("to_warehouse", "items", "t_warehouse")
 
-	def submit(self):
-		if self.is_enqueue_action():
-			frappe.msgprint(
-				_(
-					"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Entry and revert to the Draft stage"
-				)
-			)
-			self.queue_action("submit", timeout=2000)
-		else:
-			self._submit()
-
-	def cancel(self):
-		if self.is_enqueue_action():
-			frappe.msgprint(
-				_(
-					"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Entry and revert to the Submitted stage"
-				)
-			)
-			self.queue_action("cancel", timeout=2000)
-		else:
-			self._cancel()
-
-	def is_enqueue_action(self, force=False) -> bool:
-		if force:
-			return True
-
-		if frappe.flags.in_test:
-			return False
-
-		# If line items are more than 100 or record is older than 6 months
-		if len(self.items) > 50 or month_diff(nowdate(), self.posting_date) > 6:
-			return True
-
-		return False
-
 	def on_submit(self):
 		self.validate_closed_subcontracting_order()
 		self.make_bundle_using_old_serial_batch_fields()
@@ -2168,23 +2123,42 @@
 		if not qty:
 			return
 
+		use_serial_batch_fields = frappe.db.get_single_value("Stock Settings", "use_serial_batch_fields")
+
 		ste_item_details = {
 			"from_warehouse": item.warehouse,
 			"to_warehouse": "",
 			"qty": qty,
 			"item_name": item.item_name,
-			"serial_and_batch_bundle": create_serial_and_batch_bundle(self, row, item, "Outward"),
+			"serial_and_batch_bundle": create_serial_and_batch_bundle(self, row, item, "Outward")
+			if not use_serial_batch_fields
+			else "",
 			"description": item.description,
 			"stock_uom": item.stock_uom,
 			"expense_account": item.expense_account,
 			"cost_center": item.buying_cost_center,
 			"original_item": item.original_item,
+			"serial_no": "\n".join(row.serial_nos)
+			if row.serial_nos and not row.batches_to_be_consume
+			else "",
+			"use_serial_batch_fields": use_serial_batch_fields,
 		}
 
 		if self.is_return:
 			ste_item_details["to_warehouse"] = item.s_warehouse
 
-		self.add_to_stock_entry_detail({item.item_code: ste_item_details})
+		if use_serial_batch_fields and not row.serial_no and row.batches_to_be_consume:
+			for batch_no, batch_qty in row.batches_to_be_consume.items():
+				ste_item_details.update(
+					{
+						"batch_no": batch_no,
+						"qty": batch_qty,
+					}
+				)
+
+				self.add_to_stock_entry_detail({item.item_code: ste_item_details})
+		else:
+			self.add_to_stock_entry_detail({item.item_code: ste_item_details})
 
 	@staticmethod
 	def get_serial_nos_based_on_transferred_batch(batch_no, serial_nos) -> list:
@@ -2335,6 +2309,9 @@
 				"item_name",
 				"serial_and_batch_bundle",
 				"allow_zero_valuation_rate",
+				"use_serial_batch_fields",
+				"batch_no",
+				"serial_no",
 			]:
 				if item_row.get(field):
 					se_child.set(field, item_row.get(field))
@@ -2983,7 +2960,7 @@
 			if row.batch_no:
 				item_data.batch_details[row.batch_no] += row.qty
 
-			if row.batch_nos:
+			elif row.batch_nos:
 				for batch_no, qty in row.batch_nos.items():
 					item_data.batch_details[batch_no] += qty
 
@@ -2991,7 +2968,7 @@
 				item_data.serial_nos.extend(get_serial_nos(row.serial_no))
 				item_data.serial_nos.sort()
 
-			if row.serial_nos:
+			elif row.serial_nos:
 				item_data.serial_nos.extend(get_serial_nos(row.serial_nos))
 				item_data.serial_nos.sort()
 		else:
@@ -3001,7 +2978,7 @@
 			if row.batch_no:
 				item_data.batch_details[row.batch_no] -= row.qty
 
-			if row.batch_nos:
+			elif row.batch_nos:
 				for batch_no, qty in row.batch_nos.items():
 					item_data.batch_details[batch_no] += qty
 
@@ -3009,7 +2986,7 @@
 				for serial_no in get_serial_nos(row.serial_no):
 					item_data.serial_nos.remove(serial_no)
 
-			if row.serial_nos:
+			elif row.serial_nos:
 				for serial_no in get_serial_nos(row.serial_nos):
 					item_data.serial_nos.remove(serial_no)
 
diff --git a/erpnext/stock/doctype/stock_entry/test_stock_entry.py b/erpnext/stock/doctype/stock_entry/test_stock_entry.py
index 9d1a3f7..39166e2 100644
--- a/erpnext/stock/doctype/stock_entry/test_stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/test_stock_entry.py
@@ -1642,36 +1642,6 @@
 
 		self.assertRaises(frappe.ValidationError, sr_doc.submit)
 
-	def test_enqueue_action(self):
-		frappe.flags.in_test = False
-		item_code = "Test Enqueue Item - 001"
-		create_item(item_code=item_code, is_stock_item=1, valuation_rate=10)
-
-		doc = make_stock_entry(
-			item_code=item_code,
-			posting_date=add_to_date(today(), months=-7),
-			posting_time="00:00:00",
-			purpose="Material Receipt",
-			qty=10,
-			to_warehouse="_Test Warehouse - _TC",
-			do_not_submit=True,
-		)
-
-		self.assertTrue(doc.is_enqueue_action())
-
-		doc = make_stock_entry(
-			item_code=item_code,
-			posting_date=today(),
-			posting_time="00:00:00",
-			purpose="Material Receipt",
-			qty=10,
-			to_warehouse="_Test Warehouse - _TC",
-			do_not_submit=True,
-		)
-
-		self.assertFalse(doc.is_enqueue_action())
-		frappe.flags.in_test = True
-
 	def test_negative_batch(self):
 		item_code = "Test Negative Batch Item - 001"
 		make_item(
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.js b/erpnext/stock/report/stock_ledger/stock_ledger.js
index 2ec757b..baccd55 100644
--- a/erpnext/stock/report/stock_ledger/stock_ledger.js
+++ b/erpnext/stock/report/stock_ledger/stock_ledger.js
@@ -58,7 +58,15 @@
 			"fieldname":"batch_no",
 			"label": __("Batch No"),
 			"fieldtype": "Link",
-			"options": "Batch"
+			"options": "Batch",
+			on_change() {
+				const batch_no = frappe.query_report.get_filter_value('batch_no');
+				if (batch_no) {
+					frappe.query_report.set_filter_value('segregate_serial_batch_bundle', 1);
+				} else {
+					frappe.query_report.set_filter_value('segregate_serial_batch_bundle', 0);
+				}
+			}
 		},
 		{
 			"fieldname":"brand",
diff --git a/erpnext/stock/report/stock_ledger/stock_ledger.py b/erpnext/stock/report/stock_ledger/stock_ledger.py
index d859f4e..2e4b08c 100644
--- a/erpnext/stock/report/stock_ledger/stock_ledger.py
+++ b/erpnext/stock/report/stock_ledger/stock_ledger.py
@@ -3,6 +3,7 @@
 
 
 import copy
+from collections import defaultdict
 
 import frappe
 from frappe import _
@@ -31,7 +32,7 @@
 	bundle_details = {}
 
 	if filters.get("segregate_serial_batch_bundle"):
-		bundle_details = get_serial_batch_bundle_details(sl_entries)
+		bundle_details = get_serial_batch_bundle_details(sl_entries, filters)
 
 	data = []
 	conversion_factors = []
@@ -47,12 +48,13 @@
 	available_serial_nos = {}
 	inventory_dimension_filters_applied = check_inventory_dimension_filters_applied(filters)
 
+	batch_balance_dict = defaultdict(float)
 	for sle in sl_entries:
 		item_detail = item_details[sle.item_code]
 
 		sle.update(item_detail)
 		if bundle_info := bundle_details.get(sle.serial_and_batch_bundle):
-			data.extend(get_segregated_bundle_entries(sle, bundle_info))
+			data.extend(get_segregated_bundle_entries(sle, bundle_info, batch_balance_dict))
 			continue
 
 		if filters.get("batch_no") or inventory_dimension_filters_applied:
@@ -85,7 +87,7 @@
 	return columns, data
 
 
-def get_segregated_bundle_entries(sle, bundle_details):
+def get_segregated_bundle_entries(sle, bundle_details, batch_balance_dict):
 	segregated_entries = []
 	qty_before_transaction = sle.qty_after_transaction - sle.actual_qty
 	stock_value_before_transaction = sle.stock_value - sle.stock_value_difference
@@ -93,7 +95,6 @@
 	for row in bundle_details:
 		new_sle = copy.deepcopy(sle)
 		new_sle.update(row)
-
 		new_sle.update(
 			{
 				"in_out_rate": flt(new_sle.stock_value_difference / row.qty) if row.qty else 0,
@@ -105,6 +106,10 @@
 			}
 		)
 
+		if row.batch_no:
+			batch_balance_dict[row.batch_no] += row.qty
+			new_sle.update({"qty_after_transaction": batch_balance_dict[row.batch_no]})
+
 		qty_before_transaction += row.qty
 		stock_value_before_transaction += new_sle.stock_value_difference
 
@@ -117,7 +122,7 @@
 	return segregated_entries
 
 
-def get_serial_batch_bundle_details(sl_entries):
+def get_serial_batch_bundle_details(sl_entries, filters=None):
 	bundle_details = []
 	for sle in sl_entries:
 		if sle.serial_and_batch_bundle:
@@ -126,10 +131,14 @@
 	if not bundle_details:
 		return frappe._dict({})
 
+	query_filers = {"parent": ("in", bundle_details)}
+	if filters.get("batch_no"):
+		query_filers["batch_no"] = filters.batch_no
+
 	_bundle_details = frappe._dict({})
 	batch_entries = frappe.get_all(
 		"Serial and Batch Entry",
-		filters={"parent": ("in", bundle_details)},
+		filters=query_filers,
 		fields=["parent", "qty", "incoming_rate", "stock_value_difference", "batch_no", "serial_no"],
 		order_by="parent, idx",
 	)
diff --git a/erpnext/stock/serial_batch_bundle.py b/erpnext/stock/serial_batch_bundle.py
index 1fcc439..12df0fab 100644
--- a/erpnext/stock/serial_batch_bundle.py
+++ b/erpnext/stock/serial_batch_bundle.py
@@ -325,9 +325,7 @@
 			batches = frappe._dict({self.sle.batch_no: self.sle.actual_qty})
 
 		batches_qty = get_available_batches(
-			frappe._dict(
-				{"item_code": self.item_code, "warehouse": self.warehouse, "batch_no": list(batches.keys())}
-			)
+			frappe._dict({"item_code": self.item_code, "batch_no": list(batches.keys())})
 		)
 
 		for batch_no in batches:
diff --git a/erpnext/stock/stock_ledger.py b/erpnext/stock/stock_ledger.py
index 2b62baf..60053aa 100644
--- a/erpnext/stock/stock_ledger.py
+++ b/erpnext/stock/stock_ledger.py
@@ -893,6 +893,9 @@
 		query.run()
 
 	def calculate_valuation_for_serial_batch_bundle(self, sle):
+		if not frappe.db.exists("Serial and Batch Bundle", sle.serial_and_batch_bundle):
+			return
+
 		doc = frappe.get_cached_doc("Serial and Batch Bundle", sle.serial_and_batch_bundle)
 
 		doc.set_incoming_rate(save=True, allow_negative_stock=self.allow_negative_stock)
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py b/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
index 0450038..3e74ac9 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/test_subcontracting_receipt.py
@@ -1061,6 +1061,157 @@
 
 		self.assertTrue(frappe.db.get_value("Purchase Receipt", {"subcontracting_receipt": scr.name}))
 
+	def test_use_serial_batch_fields_for_subcontracting_receipt(self):
+		fg_item = make_item(
+			"Test Subcontracted Item With Batch No",
+			properties={
+				"is_stock_item": 1,
+				"has_batch_no": 1,
+				"create_new_batch": 1,
+				"batch_number_series": "BATCH-BNGS-.####",
+				"is_sub_contracted_item": 1,
+			},
+		).name
+
+		make_item(
+			"Test Subcontracted Item With Batch No Service Item 1",
+			properties={"is_stock_item": 0},
+		)
+
+		make_bom(
+			item=fg_item,
+			raw_materials=[
+				make_item(
+					"Test Subcontracted Item With Batch No RM Item 1",
+					properties={
+						"is_stock_item": 1,
+						"has_batch_no": 1,
+						"create_new_batch": 1,
+						"batch_number_series": "BATCH-RM-BNGS-.####",
+					},
+				).name
+			],
+		)
+
+		service_items = [
+			{
+				"warehouse": "_Test Warehouse - _TC",
+				"item_code": "Test Subcontracted Item With Batch No Service Item 1",
+				"qty": 1,
+				"rate": 100,
+				"fg_item": fg_item,
+				"fg_item_qty": 1,
+			},
+		]
+		sco = get_subcontracting_order(service_items=service_items)
+		rm_items = get_rm_items(sco.supplied_items)
+		itemwise_details = make_stock_in_entry(rm_items=rm_items)
+		make_stock_transfer_entry(
+			sco_no=sco.name,
+			rm_items=rm_items,
+			itemwise_details=copy.deepcopy(itemwise_details),
+		)
+
+		batch_no = "BATCH-BNGS-0001"
+		if not frappe.db.exists("Batch", batch_no):
+			frappe.get_doc(
+				{
+					"doctype": "Batch",
+					"batch_id": batch_no,
+					"item": fg_item,
+				}
+			).insert()
+
+		scr = make_subcontracting_receipt(sco.name)
+		self.assertFalse(scr.items[0].serial_and_batch_bundle)
+		scr.items[0].use_serial_batch_fields = 1
+		scr.items[0].batch_no = batch_no
+
+		scr.save()
+		scr.submit()
+		scr.reload()
+		self.assertTrue(scr.items[0].serial_and_batch_bundle)
+
+	def test_use_serial_batch_fields_for_subcontracting_receipt_with_rejected_qty(self):
+		from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
+
+		fg_item = make_item(
+			"Test Subcontracted Item With Batch No for Rejected Qty",
+			properties={
+				"is_stock_item": 1,
+				"has_batch_no": 1,
+				"create_new_batch": 1,
+				"batch_number_series": "BATCH-REJ-BNGS-.####",
+				"is_sub_contracted_item": 1,
+			},
+		).name
+
+		make_item(
+			"Test Subcontracted Item With Batch No Service Item 2",
+			properties={"is_stock_item": 0},
+		)
+
+		make_bom(
+			item=fg_item,
+			raw_materials=[
+				make_item(
+					"Test Subcontracted Item With Batch No RM Item 2",
+					properties={
+						"is_stock_item": 1,
+						"has_batch_no": 1,
+						"create_new_batch": 1,
+						"batch_number_series": "BATCH-REJ-RM-BNGS-.####",
+					},
+				).name
+			],
+		)
+
+		service_items = [
+			{
+				"warehouse": "_Test Warehouse - _TC",
+				"item_code": "Test Subcontracted Item With Batch No Service Item 2",
+				"qty": 10,
+				"rate": 100,
+				"fg_item": fg_item,
+				"fg_item_qty": 10,
+			},
+		]
+		sco = get_subcontracting_order(service_items=service_items)
+		rm_items = get_rm_items(sco.supplied_items)
+		itemwise_details = make_stock_in_entry(rm_items=rm_items)
+		make_stock_transfer_entry(
+			sco_no=sco.name,
+			rm_items=rm_items,
+			itemwise_details=copy.deepcopy(itemwise_details),
+		)
+
+		batch_no = "BATCH-REJ-BNGS-0001"
+		if not frappe.db.exists("Batch", batch_no):
+			frappe.get_doc(
+				{
+					"doctype": "Batch",
+					"batch_id": batch_no,
+					"item": fg_item,
+				}
+			).insert()
+
+		rej_warehouse = create_warehouse("_Test Subcontract Warehouse For Rejected Qty")
+
+		scr = make_subcontracting_receipt(sco.name)
+		self.assertFalse(scr.items[0].serial_and_batch_bundle)
+		scr.items[0].use_serial_batch_fields = 1
+		scr.items[0].batch_no = batch_no
+		scr.items[0].received_qty = 10
+		scr.items[0].rejected_qty = 2
+		scr.items[0].qty = 8
+		scr.items[0].rejected_warehouse = rej_warehouse
+
+		scr.save()
+		scr.submit()
+		scr.reload()
+		self.assertTrue(scr.items[0].serial_and_batch_bundle)
+		self.assertTrue(scr.items[0].rejected_serial_and_batch_bundle)
+
 
 def make_return_subcontracting_receipt(**args):
 	args = frappe._dict(args)
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json b/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
index f9e0a0b..ca14f09 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
@@ -335,8 +335,7 @@
    "fieldtype": "Small Text",
    "label": "Rejected Serial No",
    "no_copy": 1,
-   "print_hide": 1,
-   "read_only": 1
+   "print_hide": 1
   },
   {
    "fieldname": "subcontracting_order_item",
@@ -569,7 +568,7 @@
  "idx": 1,
  "istable": 1,
  "links": [],
- "modified": "2024-02-04 16:23:30.374865",
+ "modified": "2024-03-07 11:43:38.954262",
  "modified_by": "Administrator",
  "module": "Subcontracting",
  "name": "Subcontracting Receipt Item",